IBM Compatibles: The Universe Expands
COMPUTE!
The Leading Magazine Of Home, Educational, And Recreational Computing
$3,00 ;,
July
1987
Issue 86
Vol. 9, No 7
S4 25 Canado ,sa.
02193 *=*
ISSN01M-357X
Medium-Resolution Autorun
For.Atcii:l5T - \-^^^^_sxsm
'I3isk Exf>dn(^rJor;^pple H^
PFkey 64 -"^^^
Add powerful BASIC 7.0
commands and functions
Ri^ l^gic ForMoF^^
Compiefe control over
arcade-quality graphics
and animation
IBM Printer Control
Customize printer control--
codes easily from DOS
Telecomputing Witli ■ ; i i u u
The Online Services- ••'I'iiiL „
Sprite DWsigner
An easy-to-use, full-featured
sprite editor for Commodore 64
Weather Wizard
A forecaster for IBM PC/PCjr
and compatibles, Commodore_5
64, Amiga, Atari ST, Apple II,
and Atari 400/800/XL/XE
Converter
Apple graptiics conversjoox
;;iitility for Pr'm'i Shop
Using Your Printer With , ^
The Amiga >]t.^.__^
nC^^i^''^'^''
■ i J -.-»—%■ ■■■_ — «_ -~.^^ — _ ■ ■ ■ ( , v-y,
%
\l
Mindscape Aims To Please
With New Hits For the
Atari XE7XL and ST™.
INFILTRATOR
Fasten your shoulder harness and
seat-belt. Infiltrator by Chris Gray puts
you at the controls of a powerful gun-
ship ready for action. You are Johnny
■Jimbo Baby" McGibbits with miles
of enemy airspace to clear You'll then
convert to covert ground action, be-
hind enemy lines, to destroy the mad
leader and his hostile troops. Avail-
able on the Atari XE/XL only.
BOP N WRESTLE
PowlSock! Slammol Bop 'N Wrestle
is as close as you can get to profes-
sional wrestling without drawing
blood. Put yourself into the ring with
10 of the biggest, baddest bruisers
ever to perfect the turn-buckle fly.
Available on the Atari XE/XL only.
TRAIL BLAZER
BALANCE OF POWER
BALANCE
ofPOWW
HIGH ROLLER
Push yourself to the limit in this hyper-
spatial spherical grand prix. Leave
your opponent in a cloud of dust as
you leap over black holes, purple
walls, blue bouncers, and the terri-
ble cyan nasty zone. Not for the faint
at heart. But surely an action arcade
adventure in which you can have a
ball. Available on the Atari XE/XL
and the Atari ST.
Strap yourself into a Harrier jet and
enter the dangerous world of vertical
takeoffs, barrel roll attacks, and heat-
seeking sidewinders. Learn to fly the
most sophisticated combat aircraft in
this flight simulation software. Your
mission is to destroy the enemy head-
quarters 500 miles away. Good luck!
Available on the Atari ST only.
Infiltrator is available on Apple II family, IBM & compatibles. C64 & C128 and Atari XE/XL. Bop W Wrestle is available on Apple II family IBM & compatibles
064 & C128 and Atari XE/XL (128K recommended). Trailblazer is available on C64 & C128, Atari XE/XL and Atari ST. Balance of Power is available on
IBM & compatibles. Atari ST, Macintosti, and Amiga, High Roller is available on C64 & C128 and Atari ST.
Visit your retailer or call 1-800-221-9884 [in Illinois 1-800-942-7315) for Visa or MasterCard orders. To purctiase by mail, send Visa or MasterCard number
witti expiration date, check or money order to Mindscape, Inc.. RO. Box 1167, Norttibrook, IL 60065. Add S3.00 for shipping and fiandling Allow 3-5 weeks
for delivery.
If you re an attorney read this: Apple, IBM. PC Jr.. Commodore. Atari and Amiga are registered trademarks of Apple Computer, inc.. International Business
Machines, Commodore Electronics Ltd.. Atari. Inc. and Commodore Amiga, Inc. respectively. Mindscape is a trademark of Mindscape, Inc.
by Chris Crawford. You are the Presi-
dent of the United States. Tension
always escalates in this global geo-
political simulation of the cold war's
cruel reality. Test your savvy with what
the New York Times called one of the
most sophisticated strategic simula-
tions in America, Available on the
Atari ST only.
PRiSENTING TECHNOIOGY THAT LETS YOU
PROGRAM YOUR OWN DESTINY.
Electronics and computer equipment can be
state-of-the-art today. And ready for the garbage
can tomorrow.
Demand for technology is changing that fast.
And the people who can stay on top of it can
write their own ticket in this world.
That's the beauty of the Air Force.
We can put you to work with technology that
you may not read about in magazines for years.
We can teach you how to make sense of the
most intimidating circuitry in existence anywhere.
If you attend college, we'll pick up 75% of
your tuition. You can even earn an associate degree
from the Community College of the Air Force.
What does all that mean?
It means there's no telling where technology
is going in the future.
But with Air Force training, you've always got
a future to look forward to. For more information,
call an Air Force recruiter at 1-800-423-USAE
Nobody's Perfect...
Game
Winner
Time to Move
1
SARGON III
5 seconds
2
SARGON III
5 seconds
3
SARGON III
15 seconds
4
SARGON III
15 seconds
5
SARGON III
30 seconds
6
Chessmaster
30 seconds
7
SARGON III
3min
8
SARGON III
3niin
YOU CANT WIN THEM ALL.
We pitted Sargon III, the world
champion, against the challenger.
Head to head, with no punches
pulled. And believe it or not, the
champ lost one game to the chal-
lenger. But Sargon III beats
Chessmaster 2000 ahnost eventime.
Sargon 111 is the result of more than
twent\' one man years of de\-elop-
ment. Sargon III will play at precisely
tlie level of difficult)- you desire. Ask
Sargon HI for a hint, take back a move
you've already made, replay a se-
quence, change sides, or set up your
own board for customized learning.
Sargon IH lets you study in detail
more than 100 great games of histor)'
or review 45 classic chess problems,
all on screen. Sargon 111 also includes
the largest librarv' of opening moves
available on any chess program.
SARGON III WRITES CHESS
HISTORY
In a tournament sanctioned by the
U.S. Chess Federation, Sargon III beat
MHH
SARQonm
in
a master rated 2209. That makes
Sargon III the only microcomputer
program ever to defeat a player at
that level.
Sargon III has no trouble wiping
Chessmaster 2000 off the globe.
Someday, maybe a chess playing pro-
gram will be able to beat Sargon III.
Until then, \\iiich chess program do
you want to own: the world champion
or the runner-up?
(Note; The test wdS run on wo Apple 11 com-
piitere. Each program played once as white and
once as black at each level. Send us S5.00 for
handling, along with a postage paid return en-
velope and we'll send you a copy of the moves
each side played. )
Sargon III is available for: Apple K series, Apple Macintosh, IBM PC and Commodore 64'128 computers. You cait find
Sargon III at your local retailer or call 1-800-826-0706. Illinois residents call 1-800-826-1330.
Only MasterCard, \1SA and American Express accepted for phone orders.
O F T W A R
A (Msfen ol Splmiter SotMn
5' 1986 Spinnaker Software Corp • One Kendall Square • Cambridge, iL\ 02139
COMPUTE
JULY 1 987
VOLUME 9
NUMBER 7
ISSUE 86
FEATURES
14 IBM Compatibles: The Universe Expands Keith Ferrell
26 Telecomputing with the Online Services Selby Bateman
36 Weather Wizard John R. Wetsch
GUIDE TO ARTICLES
AND PROGRAMS
AP/AT/ST/AM/
64/PC/PCjr
REVIEWS
30 Ring Quest Michael B. Williams
32 Two Views of Outer Space: S.D.I, and Wanderer Neil Randall
34 Moonmisf Neil Randall
34 Partner Kathy Yakal
35 Realm of ImpossibilltY Michael B. Williams
AP
GS/ST/AM/64/PC
AP/Moc/AT/ST/AM/
64/1 28/PC
64/1 28/PC
AP/AT/64
COLUMNS AND DEPARTMENTS
4 The Editor's Notes Richard Mansfield
8 Readers' Feedback The Editors and Readers of COMPUTE!
42 Computers and Society: Advancing Technology David D. Thornburg
44 Microscope Sheldon Leemon
47 The World Inside the Computer:
Sandbox Fred Rides the Wild Electrons Fred D'Ignazio
52 INSIGHT: Atari— Three Questions Bill Wilkinson
54 The Beginner's Page: Using Variables C. Regena
55 Telecomputing Today: Computer III — The Verdict Arlan R. Levitan
56 AmigaView: Using Your Printer with the Amiga Sheldon Leemon
57 ST Outlook: Journey from the Center of the ST — Part 2 Philip I. Nelson
58 IBM Personal Computing: Fishing in The Washington Post Donald B. Trivette
AT
AM
ST
PC
THE JOURNAL
60
67
74
76
81
82
89
91
93
98
100
103
105
107
109
53
118
121
122
125
129
132
P/M Magic Gory Costanzo
PFkey 64 Jeffrey D. Partch
Zookeeper for the Amiga Michael Barron
Sprite Designer Andr6 Corbin
Disk Expander for Apple II Boris Troyanovsky
1571 Utility Package Dick Smit
Medium-Resolution Autorun for Atari ST Brian McCorkle
Text File Splitter for Atari Frank P. Walters
Converter: Graphics Conversion Utility for Ttie Print St)op . , Lee Swoboda
IBM Printer Control Ronald Dorchester
Auto-Display Hi-Res Picture Maker Jaideep Vijan
Autoload: A Streamlined 130XE RAMdisk Loader Mark Slagell
Smooth-Scrolling Billboard for Commodore 64 Paul W. Carlson
Vanishing Directory . , . , Paul W. Carlson
Relative Files on the 1571 Disk Drive Myron Achtman
CAPUTEI: Modifications or Corrections to Previous Articles
News 8i Products
COMPUTEI's Author's Guide
COMPUTEI's Guide to Typing in Programs
AT
64
AM
64
AP
128
ST
AT
AP
PC/PCjr
AP
AT
64
PC/PCjr
128
NOTE: See page 122
before typing In
programs.
MLX: Machine Language Entry Program for Commodore 64 and 128
MUC: Machine Language Entry Program for Apple
Advertisers Index
AP Apple, OS Apple llss Mac
Macintosh, AT Atcn. SI Atari ST,
AH Amiga. 64 Commodore 6A,
128 Commodore 128, PC ISM PC,
PCjr IBM PCjr, • Generol interest.
COMPUTE! Publicationsjnc.^
Part ol ABC Conumvr Magazlnsi, Inc. ^^
One of tha ABC Publishing Componlst
ABC Publishing. Pfesident. Robert G. Burton
1330 Avenue of trie Americas. New Yori<, New Vork 10019
COMPUTEI The Journal for Progressive Computing (USPS: 537250) is publistied monlhiy by
COMPUTE! Publications, Inc., 823 7fh Ave., New York, NY 10019 USA. Phone: (212) 265-8360.
Editorial Offices are located at 324 West Wendover Avenue, Greensboro, NC 27408. Domestic
Subscriptions: 1 2 issues, $24. POSTMASTER: Send address changes to: COMPUTCI Magazine, P O
Box 10955, Des Moines, lA 50950. Second class postage paid at Greensboro, NC 27403 and addi-
tional mailing offices. Entire contents copyright ®1987by COMPUTE! Publications, Inc. All rights
reserved, ISSN 0194-357X. r. = / b
Editor's Notes:
This month's guesl editorial is icritien by
Selby Batcman, COMPUTEVs associate
publisher and a long-time Commodore
watcher.
The Commodore Shake Up
T. S. Eliot wrote that April is the cmelest
month, and for the senior management
of Commodore International's U.S.
group — including Chief Executive Offi-
cer Thomas Rattigan — this past April
seems to have lived up to its hilling.
Rattigan and a group of high-level
Commodore executives were unexpect-
edly relieved of their duties in April by
Commodore International Chairman Ir-
ving Gould and the company's board of
directors. Coming on the heels of three
consecutive profitable quarters (after
more than a year in the red), the ouster
seemed to shock just about everj'one.
Among those purged were several
top Rattigan people, including Nigel
Shepherd, general manager of Commo-
dore's North American operations, and
Alan Gauthier, vice president of fi-
nance. Rattigan promptly filed a $9 mil-
lion lawsuit against Commodore for
allegedly breaching his contract, a
charge the company denied.
What caused the rift and abrupt
firings? Rumors seem to vary depend-
ing on whether they come from Ratti-
gan loyalists or Gould supporters.
Members of the former group say that it
was Rattigan's policies that turned the
company around during the past year
and a half through stringent cost con-
trols that saved Commodore from
bankruptcy. Some in the Gould camp
maintain that Commodore's bankers
largely charted the austerity budgeting
that helped return Commodore to prof-
itability, and that Rattigan and his team
had done little to boost lagging U.S.
sales which have been outstripped by
European sales.
Both sides seem to agree that there
were personality conflicts aplenty be-
tween Rattigan and Gould. And some
saw the infighting as reminiscent of the
John Sculley-Steve Jobs clash that re-
sulted in Apple cofounder Jobs leaving
the company when ScuUey reportedly
convinced the board of directors that he
represented the future of the company.
In the Commodore case, Gould — who
has been in charge at Commodore for a
quarter of a century — proved once
again that when push comes to shove,
he's the boss. Remember, it was Gould
who stayed at Commodore and Jack
Tramiel who left the company after the
two were said to have fought several
years ago.
Gould and the Commodore board
have named Alfred Duncan as the new
general manager of U.S. operations and
Richard Mclntyre as general sales man-
ager in the U.S. Both have considerable
experience: Duncan has previously
served in managerial positions with
Commodore's Canadian and Italian
subsidiaries, and Mclntyre was manag-
er of the Canadian subsidiary. Their
mandate, first and foremost, is sure to
be this one thing; Increase U.S. sales.
As long-time supporters of Commo-
dore, we wish the new management
team well.
What's of particular concern, of
course, is whether this corporate up-
heaval will retard or destroy the
chances for success of the new Amiga
500 and 2000 computers, and its poten-
tial negative impact on the continued
success of the Commodore 64, 1 28, and
PC 10 systems. The life cycle of a per-
sonal computer can be a delicate one,
and more than one machine's chances
have been dramatically altered by mar-
ket factors having nothing to do with
the computer's inherent quality or val-
ue to the consumer.
We're confident that Commodore
has the talent and the computers to
remain a key player in the personal
computer field. However, the next
months are likely to be bumpy at best.
Even with renewed growth in the in-
dustry, this remains a period of transi-
tion and volatility for most of the major
hardware companies.
What's next as Commodore and its
rivals jockey for position and market
share? Some hints are bound to surface
at the Summer Consumer Electronics
Show (CES) in Chicago, May 30-June
2, and the Computer Dealers' Exposi-
tion (COMDEX) in AUanta, June 1-4. In
many ways, these two shows — very
different in nature — are bellwethers of
the computer industry for the all-im-
portant latter half of the year, the third
and fourth business quarters of 1987.
COMDEX is a huge all-computer
show that focuses primarily on the
business computing environment. CES,
a massive consumer electronics show-
case, has a computer component of
15-25 percent.
The new products, industry an-
nouncements, and general mood of
these shows will all help to determine
the direction of the computer industry
for the remainder of 1987 and well into
1988. COMPUTEI's editors will be at
both shows, and next month we'll give
you an overview of what we've seen
and what we think it all will mean.
Until then, enjoy this issue of
COMPUTE!.
^<U^73,
Selby Bateman
Associate Publisher
COMPUTE! Publications, Inc. is
seeking to fill the following in-
tiouse editorial positions:
Assistant Book Editor— Requ res
knowledge of computer program-
ming. Undergraduate degree in
English Of related field. Two years
writing and editing experience.
Assistant Technical Editor— Re-
quires extensive experience with
microcomputers, knowledge of
moctiine language. Experience or
training in editing or writing.
Undergraduate degree preferred;
experience in iieu of degree
considered.
Microcomputer Programmer — Re-
quires proficiency on one or more
of the following computers: IBM
PC, Apple. Commodore, Atari.
College degree preferable with
coursework in BASIC. Proficiency in
BASIC programming. Extensive ma-
chine language experience a plus.
Send r$sum6 ond salary history in
complete confidence to:
Personnel Director
COMPUTE! Publications, Inc.
P.O. Box 5406
Greensboro, NC 27403
4 COMPUTEl July 1987
"Ordinary
online
services
left me flat..."
"With GEnie
I discovered
vast new
horizons."
L00+ per hour
$5 per hour
There's only so far you can go with most
ordinary online information networks. But with
GEnie— the General Electric Network for
Information Exchange— there's virtually no end
to the exciting new interests you can explore.
Discover the value of GEnie's vast range of
services and explore new territor\' with guides
from our Special Interest Groups.
Join the friendly crew with GEnie's
RoundTable "' Special Interest Groups for
exciting and informative discussions. Benefit
from the expertise of experienced individuals.
Compare notes on hardware, software, games or
any other topic you choose. And, for the
simple cost of downloading, collect thousands
of valuable public domain software programs
for your personal computer. Over 1000 new
programs arc added to our libraries every
month. And remember, UPLOADS ARE FREE
on GEnie!
No extra charge for 1200 Baud.
Make new friends, schedule meetings,
gather facts and figures, set up travel plans, get
the news, be entertained and even shop online
for a fraction of what other information sen'ices
charge, because GEnie's non-prime rate for 300
or 1200 baud is only S5 an hour. GEnie
always comes out ahead of the competition in
savings, in some cases by as much as 60%.
You get even more for your money.
In addition to user support groups, you can
meet new people with GEnie's Live Wire ™
CB Simulator. Exchange messages with
electronic mail service. Find the best vacation
deals and make your reservations with American
Airlines travel service. Shop at home with
American Express Mercbatuiise Shop. Learn
Che fun way with a subscription to Grolier's
electronic encyclopedia. Play classic and
Backed in the G£ IradJtlon
GEnie is brought to you by General Electric,
whose reputation is built on attention to detail
and customer satisfaaion. We're continuing that
tradition with GEnie.
Compare
Save'
Services
Pricing
Travel &
Stopping
SIGs/User
Groups
CB&
Mail
Financial
Services
News
Games
Registraiion
Fee
Monibfy
Minimum
Son-prime time rates \
XObaud
1200 baud
The Source
X
X
X
X
X
X
J49.95
S 10.00
J8.40
S 10.80
CompuServe
X
X
X
X
X
X
S 39.95
none
t6.00
S12.50
GEnlet
X
X
X
X
X
X
$18.00
none
ss.oo
$5.00
'Bw^mtesa'utfertiffirtum'n iri fjjnct i/ft" iNtm-prim^ Utt^ applies .Mon.-Fri^ 6fym-Sam kxai txme, aii day Sm., Sun., arui nai'l bftlldayi. Sub/aim
serried aivtilability Additional vha.T^csaf)ply far ^U)Ut}auil and ffnatKiai senicn.
multiplayer games. Use GEnie's Finattcial
Services to track stock market quotes, check
market indicators and maintain an automatically
updated personal portfolio online. All ihisplus
new services added each and every month!
Map out your own voyage of discovery
with GEnie as your guide, . .enrich your
tomorrows by signing on with GEnie today.
Sign up from your keyboard today.
4 Easy Steps:
1 . Have your major credit card or
checking account number ready.
2 . Set vour modem for local echo
(half duplex)— 300 or 1200 baud
3. Dial 1-800-638-8369. When
connected, enter HHH
4 . At the L'# = prompt enter
XJM11865,GEaie dien RETURN,
Need help or more information? No modem
yet? We can help, in U.S. or Canada call
1-800-638-9636.
GEnie
Stay online longer, for less.
INFORMATION
SERVICES
tensnl BKtric tnhinnitlon Stnrtcai Company, USA
GEnie raics and stmcca sutiea m chan^ liplmd-i in- ir<:v Jurin^ miHi-
prime hours at 5(X) or I JOO baud. Some sen'ices offered i>n ritmicmay
include additionaJ duirges.
Publishet
Editorial Director
Manoglng Editor
Associate Publlstier
James A, Coselia
ractrard Mansfield
Kotr\leen Mortinek
SelDy Bateman
Editor. COMPUTE!
& COMPUTEI'5 GAZEnE
Asslslont Editor. COIMPUTEI
Production Director
Editor, COMPUTEI's Atari ST
Disk & Magozlne
Edilor. COMPUTEIs Apple
Appllcallons Ivlagazine
Feotures Editor
Tectinicol Edilor
Assistant Technical Edilois
Assistant Edilor, COI^PUTEI's
AtoFi ST Dlsl< & Magazine
Assistani Edilor, COMPUTEI's
GAZETTE
Assistant Editor
Assistant Features Editor
Programming Supervisor
Editorial Programmers
Copy Editors
Edilorial Assistant
Submissions Reviewer
Progremming Assistant
Executive Assistant
Administrative Assistants
ReceplionisI
Associate Editors
Conlrlbullng Editor
Lance Eli<o
Phiiip I. Neison
Tony i?aberts
Tom R Halfhill
Gregg Keizer
Keith Ferreil
Ottis (?, Cowper
George Miller, Dale Mc3ane
Todd Hoimorck
Rheft Anderson
John ShadJe
Kafhv Yakol
Patrick Porrlsh
Tim Victor. Tim Midkiff.
William Chin
Karen Uhlenaorf. Karen
Siepok
Corciine Hanton
David Hensley
Troy Tucl<er
Debi Nash
Julra Fleming, iris Brooks. Mory
Hunt. Sybil Agee
Anita Armlietl
Jim 6ytt©rfield
Tofonta. Conodo
Fred D'ignazio
Birmingham. AL
David Ttiomburg
Los Aitos. CA
Bill Wilkinson
COMPUTEIs Book Division
Edilor
Asslslont Edilors
Progromming Assistant
DIreclor ot Notional Sales
Stephen Levy
Tommie Taylor. I?oben Bixby
David Fioionce
Joseph W Hatcher
Production Manager
Art DIreclor
Assistani Art Directoi
Assistant Production
Manager
Artists
Typesetting
Illustrator
irmo Swoin
Janice f? Fary
Lee Noel
De Poner
Robri Case. Kim Potts. Scotty
Billings
Terry Cash. Carole Dunton
Horr/ Blair
Director o( Advertising
Sales
Advertising Director
Ptoduclion Coordinotor
Peter Johnsmeyer
Berrard J. Theobald. Jr.
Kathleen Hanlon
Customer Service Monoger Diane Longo
Dealer Sales Supervisor Jose Cruz
Individual Order Supervisor Cossanora G'een
Jomes A Caseila, President
Richard Mansfield, Vice President, Editorial Director
Ricnord J Marino. Vice President. Advertising Sales
Christopher M Saving. Vice President. Finarice & Planning
Editorial Board
Diehard Monstield. Kathleen Mortinek. Selby Batenr^on.
Lance Elko. Tom [? HoiithilL Stephen Levy
Robert Lock. Founder and Editorioi Consultant
COMPUTE' Pub'icotions, Inc publishes:
COMPUTEI
COMPUTEI's Gaiette
COMPUTEI's Gaiette Disk
COMPUTEI's
Apple Applications Special
COMPUTEI's
Atari ST Disk i Magazine
Editorial offices:
Corporate otiices:
Cuilomer service:
Hours:
32^ West Wendover Avenue
Suite 200
Greensboro. NC 2740B USA
825 7th Avenue
New Vork, NY 10019
212-265-8360
800-346^767
(in NY 212-887-8525)
9 30 A M.-Zl 30 P M,
Mondoy -Friday
Coming In Future Issues
The Summer Consumer
Electronics Show — A Complete
Report
BASIC Batch Files With Atari
DOS
XPressCard Filing System For
The 64
Chaining Programs In
Applesoft
Pop-Up ASCII For The IBM PC
Atari ST Moth Graphics
Fractal Mountains On The
Amiga
SoftSprite For The Atari
Subscription Orders
& Inquiries
COMPUTE!
P.O. Box 10954
Des Moines, lA 50340
TOLL FREE
Subscription Order Line
800-247-5470
in I A eOO-532-1272
US
COMPUTE!
Subscription Rates
(12 Issue Year):
CanacJo & Foreign
(one yr.) $2d Surface Mail S30
{two yrs.) S45 Foreign Air
(tfiree yrs.) S65 Deliverv S65
IT I A
•rciKiUtUu n^uloclVWitrKniAwdJllm
Advertising Sales
1. New England &
Micl-Atlan?lc
Bernard J. Ttieobald, Jr.
212-315-1665
Tom Link
212-315-1665
2. Southeast & Foreign
Harry Biair
919-275-9809
3. Midwest &
Southwest
Jerry Thompson
312-726-6047 (Cl^icago)
713-731-2605 (Texas)
303-595-9299 (Colorado)
41 5-348-8222 (California)
Lucille Dennis
415-348-8222
4. West, Northwest &
Brlltsti Columbia
Jerry Thompson
415-348-8222
Lucille Dennis
415-348-8222
5. Canada
Harry Blair
91 9-275-9809
DIreclor of Advertising Sale*;
Peter Johnsmeyer
Assoc lale Advertising DIreclor:
Bernard J, Theobald, Jr.
COMPUTEI Sales Offica 212-315-1665
Address all advertising materials to:
Kathleen Honion
Advertising Production Coordinator
COMPUTEI Magazine
324 West Wendover Avenue
Suite 200
Greensboro. NC 27408
The COMPUTE! subscriber list is made available fo carefully screened organizations with o product or service whicfv
may be of interest to our readers II you prefer not to receive sucti moilirjgs, please send an exact copy of your
subsc ription lobel lo' COMPUTEI P-0. Box 1 0955. Des f^oines. i A 50950, Include o note indicating your ptef erence to
receive only your subscription.
Aultiors of monuEcripts worront that oil matorlQls submitted to COfiflPLITEi are onglnol materials with full cDwnerstiip
rights resident in said outhors By sLjbrnitting articles to COMPUTE!, outhors ocknowiedge ttiat such moteriais. upon
acceptance tor publication, become the exclusive property of COMPUTEI Pubiicotions, Inc, No portion of this
magazine may be reproduced in any form without written permission from the publisher. Entire contents copyright
® 1 987 , COMPUTEI Publications. Inc Rights to programs developed and submitted by authors are explained in our
author contract Unsolicited materials not accepted (or publication in COMPUTEI will t>e returned If author provides
a self-addressed, stamped onvetope. Programs (on tape or disk) must accompany eoch submission Printed listings
ore optional, but helpful Articles should be furnished as typed copy (upioer- and lowercase, please) with double
spacing. Each page of your article should boar the title of the orticie. date and name of the author COMPUTEI
Oisumes no liability for errors in articles or advertisements. Opinions expressed by authors ore not neoessaniy those
of COMPUTEI.
PET, C&P^, VIC-20 and CotTvnodoro 6d are trademarks of Cctrvnodore ATAI51 is a troderTxary of Atori, Inc
Business Moctiirres, Inc ond/or Commodore Electronics limited T1-99/dA is o frodemork of Texas instruments, inc
Apple. Apple ». Qr>d Apple iGsaro trodemarks of AppJe Corrputer Comoony Radio StKick Color Computer is o trodemorV of
iBf^ PC and PCjr or© trademorVs of International Business Machines. Inc, Tandy. Inc
New books
from COMPUTE!
COMPUTE! Books is bringing you a brand new
line up of books for your Commodore 64 and
128. Tfiese recent releases offer you everything
from programming hints to exciting games, from
educational to home and business applications.
Pascal for Beginners
$14.95 0-87455-068-8
Book/disk combination for the Commodore 64
S29.95 ISBN 0-e7455-069H6
Thiis introductory text to standard Pascol on any computer is
on ideai tutorial for anyone who wonts to learn this powertui
computer language. It includes everything you need, includ-
ing an introductory Pascol interpreter* for the Commodore 64
and 126 in 64 mode, ready to type in and use. Written in plain
English and offering numerous program examples, it gently
and cleariy exploins standard Pascal and structured program-
ming. Latter sections include discussions of advanced topics
such as files and dynamic data storage. There is also an op-
tional disk available for $12.95 for the Commodore 64 which
Includes most of the programs in the book. 688BDSK.
•The Commodore 64 Pascal interpreter is not full-featured,
but still a powerful implementation of Pascal which suits the
needs of most beginners,
COMPUTEI's Music System
for the Commodore 64 and 128
Book/disk combination only
$24,95 ISBN 0-67455-074-2
Sldplayer, the feature-packed, popular music player and edi-
tor program, is now more versatile and more impressive than
before. Enhanced Sldplayer for the Commodore 128 and 64
includes two new versions — one for the Commodore 128 run-
ning in 128 mode and another for the Commodore 64. Take
advantage of every feature the SID chip (the sound chip in
the 128 and 64) hos to offer. Just like the original. Enhanced
Sldplayer is easy to learn and use, with many powerful new
features. The accompanying disk contains the editor, player
programs (including o Singalong program), utilities, and sam-
ple music that you can enjoy immediately or change. The
new Sldplayer plays any songs created by the originai
Sldplayer for the Commodore 64.
COMPUIEf's
nnci Rook nf
PASCAL
I BEGINNERS
^mr<
User's Guide to GEOS: geoPaInt and geoWrife
$18,96 ISBN 0-87465-080-7
Learn the ins and outs of GEOS, the new icon-based operat-
ing system for the new Commodore 64C and the 64, with this
step-by-step guide. Everything from creating simple letters
with geoWrite ond pictures with geoPaint to merging text and
graphics ond using desk accessories is cleariy ond concisely
explained.
COMPUTEI'S Second Book of the Commodore 128
$16.95 ISBN 0-87455-077-7
The editors at COf^PUTE! Publfcatlons have collected some of
the best games, programs, and tutorials for the Commodore
126 (in 128 mode) from COMPUTEI mogozine ond COMPUTEI's
Gazette. Like COMPUTEfs First Book of the Commodore 128.
this book offers a variety of progroms ond articles for every
1 28 user. Each program has been fully tested and is ready to
type in and use on the Commodore 128 running in 128 mode.
There is also a disk available for $12.95 which includes the pro-
grams in the book. 777BDSK.
Mapping the Commodore 64, Revised
$16.95 ISBN 0-87455-082-3
An update of the bestselling memory map and progromming
guide. It's a necessity for intermediate and advanced pro-
grammers. This definitive sourcebook has been expanded and
now covers the new icon-based GEOS (Graphics Environment
Operating System) with cleor descriptions of how to make it
wort< for you. For BASIC and machine language programmers
of both the Commodore 64 and 64C.
Look for COMPUTE! Books at your local computer or book store.
Or, to order directly from COMPUTE!, call toll free 1-800-346-6767 (In NY 212-887-8525) or
write COMPUTE! Books, P.O. Box 5038, F.D.R. Station, New York, NY 10150.
Please include shipping and handling: $2.00 per book in U.S. and surface mail; $5.00 oirmaiL
NC residents add 5 percent sales tax and NY residents add 8.25 percent sales tax.
Please allow 4-6 weeks for delivery.
COMPUTE! Publicationsjncffl
Part o( AflC Coosumef Magazines. Inc.
One of the ABC Publishing Componies
COMPUTE! Books ore available outside the United States from
subsidiaries of fvlcGraw-Hiil internationoi Book Company.
Readers Feedback
rhe Editors and Readers of COMPUTE!
If you have any questions, comments, or
suggestions you would like to see ad-
dressed in this column, write to "Readers'
Feedback," COMPUTE!, P.O. Box 5406,
Greensboro, NC 27403. Due to the volume
of mail we receive, we regret that we
cannot provide personal answers to tech-
nical questions.
The Logic Of Lines
How do you turn off the automatic
scroll of text in Atari's graphics mode 0?
My program puts a menu at the top of
the screen and prints text on the next 18
lines. I delete the sixth line when the
screen gets full, but everything scrolls
up from one to three lines, instead of
just one.
John Pilge
The problem you are having is common on
eight-bit computers with text mode. Al-
though the screen display always contains
the same number of physical lines — 23
lines, in the case you mention — it may
contain a different number of logical lines
at any given time. A logical line is a
collection of one or more linked physical
screen lines. When you clear the screen,
every logical line is set to the correspond-
ing physical line. But if printing overlaps
from one line to another, the computer
litjks the tzuo physical lines into a single
logical line. On the Atari, a logical line
may contain as many as three physical
lines. When you enter a program line, the
computer ritigs a bell to wan: you when
you near the end of the third logical line;
it's a warning to indicate that you're almost
at the end of the legal size of a logical line.
Whether you're typing a program,
running it, or entering direct commands,
the logical line system is always enabled.
That's why BASIC program lines or a typed
response to an INPUT statement can be
only three lines long. When the computer
scrolls the screen, it scrolls an entire logi-
cal line, creating the effect you describe.
The easiest way to solve your problem
is to limit the length of everything that's
printed on the screen so that each logical
line is only one physical line. If this is
impractical, here's another solution:
POKE 690,255;POKE 691,255:FOKE
692,255
Execute these statements in the pro-
gram immediately before you delete a line.
They reset every logical line to one physi-
cal line. Although you might be tempted
to experiment, it's better to avoid typing
these POKES in direct mode when you're
editing a BASIC program. These state-
ments Split up all the lines on the screen
that are longer than one logical line. If you
then press RETURN over any of those
partial lines, you may lose some of the
program.
The Commodore 64 has a similar
system of logical lines, except that its
logical lines consist of either one or two
physical lines. Here's an equivalent for
the 64 to the three POKEs above:
FOR J=217 TO 242iPOKE J,FEEK(J) OR
128: NEXT
On the Commodore 128, logical lines
can normally be up to four physical lines
long. However, the 128 allows you to
disable line linking so that all logical lines
are just one physical line long. Turn this
feature on with
POKE 248, PEEK(248) OR 64
To restore normal line Unking, use
POKE 248, PEEK(248> AND 191
Mismatclied Monitor
I have a Tandy 1000 computer with
monochrome monitor, and ! would like
to get a monitor with higher resolution.
The Tandy VM-3 high-resolution mon-
itor has a 720 X 350 screen for text and
a 640 X 350 screen for graphics, but I
have been told that 1 can't use that
monitor. What's the reason for this? I
thought you could use any monitor as
long as you have the right cable to hook
it up.
Robert Estrada, Sr.
for computer graphics and text, the com-
puter's display capabilities should match
those of the monitor. For instance, if your
computer generates a screen that's 320
dots wide and 200 dots high, any video
monitor able to display a 320 X 200
screen can be used. A monitor capable of a
higher resolution won't increase the com-
puter's resolution. Check the specifica-
tions for your computer's video hardware;
buying an expensive high-resolution
monitor will be a waste of money if your
system can't generate eijuivatent high-
resolution displays. The important factor
is whether the computer and monitor can
display the same number of dots vertically
and horizontally, using the same number
of colors. If the two devices don't match in
that way, it doesn't matter whether you
can hook them up physically. If you con-
nect a computer to a mismatched monitor,
the picture may look garbled, or perhaps
simply blank.
For the IBM PC and compatible com-
puters like your Tandy 1000, it's often
possible to upgrade the video hardware to
get higher resolution. You may be able to
replace the existing video hardware with
a different graphics adapter card. Before
investing in such a card, you should make
sure that it is compatible with your com-
puter and with the software you use most
often.
Disabling Control-Breal< On
IBM PC And Clones
I have an IBM PCjr and I want to turn
off the Fn-Break key combination so the
machine ignores a break. Can you pro-
vide an assembly language routine to
do this?
Kevin Neil
Like most IBM PC operating system func-
tions, the Control-Break function (Fn-
Break on the PCjr) is controlled by an
interrupt service routine. Briefly, an in-
terrupt occurs when a special pin on the
microprocessor receives a signal. At this
point, the computer ceases execution of
the program it is rumung, and a support
chip feeds it the ROM address of the
appropriate machine language subroutine
which it then executes. This routine ends
with an IRET (RETurn from Interrupt)
instruction. After it performs IRET, the
processor returns to running the original
program.
Every keypress on an IBM PC causes
such an interrupt. Normally, the com-
puter decodes the keypress and places its
ASCII value in the keyboard buffer for use
by the program currently running. How-
ever, an interrupt caused by Control-
Break executes a special interrupt service
routine — the effects of which are known to
anyone who has ever pressed the Control-
Break key combination.
One advantage of using interrupts is
that you can change the address of the
service routine. This allows a program to
divert the address of a service routine to
8 COMPUTEI July 1987
VISIT OUR OPEN HOUSE FREE
AND ENTER TO WIN
A $1,000 SHOPPING SPREE!
SATURDAY AND SUNDAY, JULY 18-19, 1987!
For two days only, you can sign onto America's largest electronic stiopping
service, Comp-u-store Online, during our OPEN HOUSE!
Take advantage of FREE membersinip access (a $25 value), one hour FREE
connect time (a $5 value), and up to 50% guaranteed savings* on over
250,000 quality name-brand products.
And that's not ail — while you're there, be sure to enter our OPEN HOUSE
DRAWING and you could win a FREE one year membership and a $1,000
shopping spree in Comp-u-store OnLine!
To find your way to our OPEN HOUSE, please follow the directions
printed on the invitation below.
Have you ever been to a party that
didn't have to end?
Once you visit our OPEN HOUSE, we think
you'll want to stay, so for a limited time you can
join Comp-U'Store OnLine at a special low rate.
When you sign up by August 30, 198 7 and.
indicate that you saw this ad, you'll received
6 months of membership for only $1* (tham
$12.50 value)! Just call 1-800-843-7777H
ft*
R)r price poJky and billing information,
see Terms And Condilions when you tog on.
> , nq Telnet or Tymnet number for your area.
,Setyour.ode.to...eoc.^^^^^^^^
2 once connected, press the CONTH
3. At HOST NAME pro.pt enter CPS^
4. M USER ID prompt, enter 34 0^
,. AtPASSWOROpro.pt. e^er^Uj.
t ACCESS CODE prompt eme
its own, custom-tailored routine. If you
replace the address of the Control-Break
service routine with the address of anoth-
er routine, that routine executes every
time Control-Break is pressed. The BASIC
interpreter itself makes such a change
when it loads, changing the Control-Break
routine to a routine which breaks the
operation of a BASIC program.
The easiest way to disable Control-
Break is to divert the address of the Con-
trol-Break routine to a do-nothing routine
that contains nothing but an IRET in-
struction. While IRETs abound in the
ROM, the exact addresses where they may
be found vary depending on the ROM and
DOS version and the make of the com-
puter. It is safest to put an IRET in memo-
ry, and to point Control-Break to this
instruction. The following BASIC pro-
gram changes the address of the service
routine (located at $006C-$Q06F) to point
to an IRET instruction ivhich it places at
address $0180, a normally unused
location.
0 DEF SEB-0 'SET TO 0
SEGMENT
10 POKE l<H180,«iHCF 'POKE 1B0
WITH MACHINE INSTRUCTION FO
R IRET
20 POKE S<H6C,iHB0 'LOW BYTE
OF 1B0
30 POKE 4iH6D,t.Hl 'HIBH BYTE
OF 180
40 POKE !iH6E,0 '0'S FOR
SEBMENT
50 POKE !<H6F,0
60 FDR I-l TO 1000! PRINT 1:NEXT
'TRY AND BREAK IT
Here is an assembly language routine
that does the same thing. It uses DOS
service call S25 to change the address of
the Control-Break interrupt §1B:
MOV AX.0
MDV DS.AX
MOV BX, !;ll80h
nOV fiX,0CFh
MOV CBX],AX
XCHG BX,DX
MOV flH,ra25h
MQV AL,l;ilBh
INT 21h
INT 20
ititerpret if you're not familiar with
BASIC.
First, you need to know where to look
for the error. In line 70, the computer
reads a series of numbers from DATA
statements elsewhere in the program and
POKEs those numbers into memory. This
IS a common method of transferri)ig infor-
mation (in this case, a machine language
program) from BASIC program lines into
the computer's memory. When line 70 is
executed, the computer is actually looking
at the DATA values that occur in later
program lines. The READ statement be-
gins with the first DATA value in the
program and retrieves each DATA value
in order. To track down the source of this
error, you must carefully proofread every
number in the lines that begin with
DATA.
You also need to know what kind of
mistake to look for. Because 255 is the
largest value that a single memory loca-
tion can hold, the POKE command can
only store numbers in the range 0-255.
The message ILLEGAL QUANTITY
usually indicates that you are trying to
POKE a number which falls outside that
range— for instance, a negative number,
or one that's greater than 255. Thus, you
should look for numbers in the DATA
lines that are outside the range 0-255.
In your case, BASIC correctly indi-
cates that the error occurred while it was
performing line 70. The POKE command
that triggers the error is in line 70. But the
illegal quantity that POKE can't handle
was pulled from a different line of the
program.
Perhaps the most common cause of
ILLEGAL QUANTITY errors is leaving
SET DATA SEG READ-WRITE TO 0
CHANGE LDCATIDN 180h
TD OPCODE FOR IRET
DOS NEEDS LOCATION FOR IRET IN DX
SETUP FOR DOS INTERRUPT CHANGING SERVICE
INTERRUPT NUMBER TO BE CHANGED
DOS INTERRUPT
RETURN TO DOS
2Sh
Typing Proofreader
Correctly
I have typed in the Commodore "Auto-
matic Proofreader" program that ap-
pears in the back of your magazine.
When I run the program, it stops at line
70 with an ILLEGAL QUANTITY ER-
ROR message. Is this line printed cor-
rectly? I would appreciate any
information that you can provide.
Stephen A. Kuhn
There are no mistakes in the Commodore
"Automatic Proofreader" program or in
the listing which appears in the magazine.
The message you mention is due to a fairly
common typing error which is tricky to
out a comma between two DATA values.
The first DATA line of the Proofreader
program, for instance, begins with these
two numbers:
DATA 120,169
If you forget to type the comma be-
tween 120 and 169, the READ statement
interprets the number as 120169, which is
much too big to be stored by POKE and
triggers an ILLEGAL QUANTITY error.
The message ILLEGAL QUANTITY
can also indicate that you're trying to
POKE a value into some location that
doesn't exist in the computer's memory.
For instance, the statement POKE 65537,
12 causes an ILLEGAL QUANTITY error
because, while 12 is small enough to fit in
a memory address, the Commodore 64
doesn't contain a location 65537 (the
highest memory address is location
65535). This sort of error might occur if
you mistype lines 10-60, which detect the
computer you are using and calculate ad-
dresses used by the Proofreader.
Typing mistakes also can trigger an
OUT OF DATA error message. For in-
stance, if you omit a comma between two
small numbers, the wrong number that
results may not be large enough to cause
an ILLEGAL QUANTITY error, but the
computer will run out of DATA items to
read before it finishes the loop. For ex-
ample, say that you omit the comma be-
tween the numbers 4 and 3 in line 160 of
the Proofreader program. The computer
dutifully POKES the legal value 43, but
now the program doesn't contain enough
DATA items to complete the FOR-NEXT
loop in line 70. Again, though the error
message points to line 70, the mistake
itself is found in a DATA line.
Similar errors occur if you omit a
number entirely or type a period instead
of a comma. If you type DATA 120.169 in
line 160, for instance, the READ command
in line 70 reads the fractional value
120.169 from that DATA line. However,
the program doesn't stop with an ILLE-
GAL QUANTITY error, as you might ex-
pect. Since it's impossible to POKE a
fractional value, BASIC automatically
strips the fraction from the number and
uses 120, which is in the legal range for
POKE. The effect is the same as if you
leave out a number; the program stops and
warns you that it is OUT OF DATA.
Another mistake involves typing an
extra comma where no comma should ap-
pear. For instance, look at line 160 of the
listing in the magazine. Because that line
is too long to be listed in one column, the
listing breaks at the right margin; as it
happens, the break occurs in the middle of
the number 169. A few readers have made
the mistake of inserting a comma at the
break, which changes the number 169 into
two numbers: 16 and 9. Since the program
now contains one DATA item too many, it
won't generate an OUT OF DATA mes-
sage. However, to help you find typing
errors, the program also calculates a
checksum based on the value of each
DATA item and its position in the DATA
list. If you add an extra comma, the pro-
gram itself detects a mistake and warns
you to check your typing. The same mes-
sage appears if you simply mistype a num-
ber in a way that doesn't create an illegal
quantity. For instance, typing 102 instead
of 120 doesn't cause an ILLEGAL QUAN-
TITY error, but the program detects that
you made a typing error.
Typing mistakes in DATA statements
can be difficult to spot. One useful debug-
ging technique is to get a friend to read the
magazitje listing aloud while you compare
10 COMPOTEI July 1987
the listing on your screen. Another trick is
to check each DATA value in reverse order,
beginning with the last DATA value and
working backwards to the beginning.
Other typing errors can be more diffi-
cult to spot, but just as insidious. If you
scramble any of the variable names in the
program, it probably won't work at all. For
instance, if you type POKE AR instead of
POKE ADR, or type SYS SS instead of SYS
SA, don't be surprised if the computer
crashes. (No real harm is done when the
computer locks up; simply turn the ma-
chine off and on to regain control.) Like-
wise, the Proofreader can't possibly work
if you leave out a program line altogether.
There's no way to check for every conceiv-
able typing error without writing a second
Proofreader program to check the first
Proofreader program — which goes beyond
the point of diminishing returns.
If the Proofreader stops with an error
message, it's important to reload it from
disk or tape for editing, rather than trying
to edit the lines that remain in memory.
To simplify the process of running on five
different computers, the Proofreader in-
stalls its machine language in the same
memory area used by the first few lines of
the BASIC program (which are no longer
needed by the time the computer reaches
line 70). For this reason, it's important
that you not delete any of the lines in the
program, even if you're certain that they
don't apply to your computer.
Sprites On The 64
I have a question about the Commo-
dore 64. How do you display two dif-
ferent sprites at the same time? Also,
how do you use multicolor sprites?
Ty Neyedli
All the Commodore 64 's sprite features
are generated by the computer's VIC-II
video chip. That chip is controlled by
registers that appear at memory locations
53248-53294. You manipulate sprites by
POKEing values into these registers. For
example, memory location 53269 is used
to turn any of the 64's eight sprites on or
off. Here is the general formula for turn-
ing on a sprite:
POKE 53269, 2TSN
In this case, SN represents the num-
ber of the sprite you wish to turn on. The
sprites are usually numbered 0-7. Thus,
POKE 53269,1 turns on sprite 0. POKE
53269,4 turns on sprite 2, and so forth. To
turn on more than one sprite, you simply
add the POKE values together. Thus,
POKE 53269,5 turns on both sprite 0 and
sprite 2. To turn on sprites 3, 5, and 1, you
would use POKE 53269, 168 (2t3 + 2t5
+ 2T7 = S + 32 + 128 = 168).
Even after you turn on a sprite, it
won't be visible until you position it
somewhere on the active portion of the
screen. Memory locations 53248-53264
control the sprite vertical and horizontal
positions. The even-numbered addresses
(53248, 53250, and so on) control horizon-
tal positioning, while odd-numbered ad-
dresses (53249, 53251, and so on) are for
vertical positions. Each sprite uses a pair
of adjacent addresses. For instance, the
horizontal position of sprite 0 is controlled
by location 53248 and the vertical posi-
tion by location 53249. If you don't care to
memorize these locations, you can calcu-
late the position location address for a
given sprite with the formula 53248 + SN
* 2, where SN is the sprite number.
These program lines display sprites 0
and 1 in the middle of the screen:
10 POKE 53269, 3: REM 3 = 2t0 + 2T1
20 POKE 53248,90: POKE 53249, 150
30 POKE 53250, 130; POKE 53251, 150
Making things more complicated is
the horizontal "seam" that runs down the
right side of the screen. The active screen
area is 320 pixels wide — more possible
horizontal positions than can be specified
with a single memory location (one byte
can only hold values 0-255). Thus, it's
necessary to use a second location that
indicates whether a sprite is on the right
or left side of the seam. Location 53264
works like the one that turns sprites on
and off. To position a sprite on the right
side of the seam, use
POKE 53264, 2TSN
where SN represents the sprite number.
For example, you can display sprite 0 near
the right border by substituting this line
in the example program:
20 POKE 53248, 90: POKE 53249, 90:POKE
53264, 1
If you type in and run this program,
you'll notice that the sprites have a ran-
dom, disorganized form, because ive
haven't yet defined their shapes. Loca-
tions 2040-2047 contain pointers that tell
the computer where each sprite's shape
data IS located. By POKEing different val-
ues in these registers, you can change a
sprite's shape. While the sprites are on the
screen, type in the following line and
press RETURN:
FOR J=0 TO 255:POKE 2040J:NEXT
This line makes sprite 0 flip rapidly
from one shape to another. Again, because
we're pointing to memory areas that don't
contain sprite shapes, these shapes will
look random. Each sprite pattern contains
63 bytes of data. The easiest way to design
sprites is with a sprite editor program
such as "Sprite Designer," found else-
where in this issue.
Sprite colors are controlled by loca-
tions 53287-53294. The color numbers for
sprites are the same numbers used for
screen and text colors. Thus, POKE 53287,0
turns sprite 0 black. POKE 53288,7 changes
sprite 1 to yellow, and so on.
Multicolor sprites have four different
colors, but only half the resolution of nor-
mal sprites, making them more colorful,
but chunkier in appearance, location
53276 controls sprite multicolor mode.
This register works like locations 53269
and 53264. To set a sprite to multicolor
mode, use POKE 53276, 2tSN, where SN
represents the number of the sprite you
-wish to change.
In multicolor mode, locations 53285
and 53286 determine the third and fourth
colors for all the multicolor sprites. The
first and second colors of the sprite are set
by the screen background color register
(53280) and the individual sprite color
locations (53287-53294).
The following program displays and
animates three multicolor sprites:
EB 10
HS 20
QH
30
HJ
40
XA
50
KK
60
JA
70
CX
80
PH
90
AP
100
KA
110
SJ
120
CQ
130
FF
140
RX
150
XC
160
RE
170
HE
180
SA
190
DF
200
XP
210
HM
220
DH
230
EQ
240
DK
250
GH
260
JE
270
CK
280
CR
290
SS
300
MR
310
AK
320
SP
330
FQ
340
SQ
350
MQ
360
REM POKE IN SOLID SPRITE
PATTERN
FOR 1=832 TO 1023:POKE I
, 170:MEXT
REM PUT IN STRIPE
FOR 1=0 TO 5
POKE 832+1+12, 255 :POKE 8
96+1+36, 255: POKE 960+1+5
7,255
NEXT I
REM PUT IN SECOND MULTIC
OLOR STRIPE
FOR 1=0 TO 8
POKE 832 + 1 + 18, 85 I POKE 89
6+1+42, a5:P0KE 960+1,85
NEXT 1
REM P() IS POINTER
P(1)=13:P(5)=14:PC6)=14
REM X() IS HORIZONTAL P
OSITION
X(1)=90:X(5)=200:X(6)=2
80
REM Y() IS VERTICAL POS
ITION
Y(1)=99;Y(5)=88:Y(6)=77
REM TURN ON SPRITES 98=
2T1+2T5+2T6
POKE 53269,98
REM MAKE THEM ALL MULTI
COLOR
POKE 53276,98
REM SET MULTICOLORS TO
{ SPACE } YELLOW, BLACK
POKE 53285, 7: POKE 53286
,0
REM SET SPRITE PRIMARY
t SPACE] COLOR
POKE 53288, l:POKE 53292
,2:P0KE 53293,3
FOR SN=0 TO 7
IF P(SN)=0 THEN360
P(SN)=P(SN)+1:IF P(SN)=
16 THEN P(SN)=13
POKE 2040 + SN,P(SN)
Y(SN)=Y(SN)+2
IF Y(SN)>255 THEN Y(SN)
= 32
IF X(SN)>256 THEN340
POKE 53248 + SN * 2,X(S
N):POKE 53264, PEEK(5326
4) AND { 255-2 TSN) :G0T03
50
REM FAR RIGHT
T=X(SN)-2 56:POKE 53264,
PEEK( 53264) OR 2TSN
POKE 53249 + SN * 2,Y(S
N)
NEXT SN:GOTO250 ®
July 1 987 C(»XPUTEI 1 1
$15,000.00
Programming Contest!
COMPUTE!' s PC Magazine
For IBM PCs & Compatibles
First Prize $7,500.00 Second Prize $2,500.00
Five Honorable Mentions $1,000.00 each
COMPUTE! Publications, Inc., a longtime leader in personal computer publishing, is launching a new maga-
zine this summer: COMPUTEI's PC Magazine for IBM PCs & Compatibles. Each bimonthly issue will include a
floppy disk filled with programs, source code, and other useful information. We're looking for the very best
original software for IBM PCs, XTs, and compatibles, and are sponsoring a programming contest with a total of
$15,000.00 in prize money for the top six winners. That's $7,500.00 for First Prize; $2,500.00 for Second Prize;
and five Honorable Mentions at $1,000.00 each. In addition, the winners will receive our standard purchase
fees for publication in our magazine and royalties if republished in COMPUTE! books.
Even if your contest entry doesn't win a prize, you will still earn purchase fees if we accept your program
for publication.
Interested? If so, read these rules:
1. Entries must be your original work, previously unpublished in
any form. AH those whose programs are accepted will be required
to affirm this in writing.
2. You can submit as many entries as you want, but we cannot
consider programs which have been either entered in other con-
tests or submitted for publication elsewhere at the same time.
3. The contest deadline is October 31, 1987. All entries must be
received at our offices by this date. Programs submitted after this
date will still be considered for publication, but will not be entered
in the contest. If we purchase an entry for publication before the
deadline, the entry is still eligible to win.
4. Entries are allowed (and encouraged) in virtually all software
categories: home and business appHcations, education, recreation,
telecommunications, graphics, sound and music, and utilities.
5. Entries may be written in any programming language — includ-
ing BASIC, C, machine language, Pascal, and Modula-2 — as long
as they meet two requirements. First, if you're using a compiled
language, the compiled object or runtime code must be a self-stand-
ing program that can be run by someone who doesn't own a copy
of the language. (Interpreted BASIC is an exception. It can be
assumed that nearly everyone owns a copy of BASICA or GW-
BASIC.) Second, we must be able to legally distribute the program
without incurring licensing fees or other obligations to the maker of
the language. If you're not sure whether a certain language quali-
fies, contact its maker for clarification.
Every contest entry must include this signed form:
6. Entries must be submitted on 5 'A -inch floppy disks. If your pro-
gram is written in a compiled language, you must submit both the
runtime code and all of the source code required to compile the
program.
7. Entries must be accompanied by an ardcle which explains how
to use the program and what it does. If your program employs any
new or unusual techniques that you think will be of interest to
other programmers, you can also describe how the program works.
(If you feel that writing is not your strong point, please do not hesi-
tate to enter; this is a programming contest and the entries will be
judged solely on the basis of the programs submitted,)
8. Submissions which do not win a prize and are not accepted for
publication will be returned only if accompanied by a self-
addressed, stamped mailer.
9. The staff of COMPUTE! Publications, Inc., will judge the con-
test, and all decisions regarding contest entries and acceptances
will be solely at the discretion of COMPUTE! Publications, Inc. All
decisions are final. This includes decisions regarding creativity,
similarity among entries, and general suitability.
10. Winners will be announced by COMPUTE! Publications, Inc.,
in eariy 1988.
11. This contest is void where prohibited bv law. Full-time, part-
time, and previous employees of COMPUTE! Publications, Inc.
and Capital Cities/American Broadcasting Corporation are ineli-
gible for the contest, but may still submit work for publication at
standard rates.
I warrant that the program presently entitled
is my own original work and
that the work has riot Seen submitted for consideration elsewhere, nor has it been previously published in any form. If my work is
accepted by you, I understand that your decision as to the selection of winners and awarding of prizes is final and without recourse
on my part. Should you select my submission, I understand that I will receive no payments unril I sign your standard contract,
which includes assignment of the copyright of the program to COMPUTE! Publications, Inc., and that you may use my name and
image in promotional materials and other forms. (If you are under age 18, your parent or legal guardian must sign for you.)
Signature:
Address entries to:
PC Programming Contest
COMPUTE! Publications, Inc.
P.O. Box 5406
Greensboro, NC 27403
COMPUTE! Publicationsjnc.®
Part of ABC Consumei MoQaures, Iric ^^^
I Mogiaiires, iric
Orhe o' Jhe A&C Py&iSfting Companies
An extraordinary new publication for users of IBM PCs and compatibles:
COMPUTErs
PC magazine
Special
BONUS
First Issue
FREE
With Subscription
FOR IBM PCs AND COMPATIBLES
A bimonthly magazine devoted exclusively to PC enthusiasts. It includes a disk
containing all of the programs found in each issue.
The IBM PC has long been a recognized standard in the
business community. But recently, something amazing
has been happening: Low-priced PC/MS-DOS
compatibles and clones are moving into homes, schools,
and small businesses as never before. According to sur-
veys, they're being used for just about everything: tak-
ing work home from the office, running small
businesses, word processing, spreadsheet budgeting,
telecommunications, education, and entertainment.
Thaf s why COMPUTE! Publications is announcing a
new magazine specially designed for PC users: COM-
PUTE!'s PC Magazine. It's a magazine for everyone — not
just corporate data-processing managers or Fortune 500
executives. Whether you've got an IBM PC, XT, AT, or
Model 30, a mid-priced compatible, or a low-cost im-
ported clone, you'll find many valuable applications,
ideas, and entertaining programs in every issue of COM-
PUTEI's PC Magazine:
• Top-quality programs. First and foremost, COM-
PUTEI's PC Magazine will bring you a disk full of orig-
inal, previously unpublished software. Application
programs for home and business. Educational programs
for youngsters. Utilities. Games. And since all of the
programs are on disk, there are few limitations on
length or language.
• The best of the boards. In addition to original soft-
ware, each disk also includes an outstanding program
picked from the thousands of files available on bulletin
board systems all over the nation. We make sure you
get the latest available revision, fully tested and veri-
fied, with improved, easy-to-understand documentation.
• Source code. If you're a programmer — or would like
to be one — you'll appreciate the source code for our
programs included on every disk. You can examine
valuable routines in a variety of languages, and even
customize our programs for your own use.
■ Regular columns. Take a look at our "PC News &
Notes" section to learn about the major events through-
out the PC community. Hear all the inside gossip and
rumors with "The Ear." Use your PC more efficiently
with help from our "Getting Down To Business" col-
umn. And send your questions and hints to "Readers'
Feedback."
• Reviews. You'll see honest evaluations of the most in-
teresting software and hardware for PCs and
compatibles.
• New Products. Highlights of hundreds of new pro-
grams, peripherals, expansion boards, and other prod-
ucts that are released for PCs every month.
• And more. Interviews with newsmakers, reports from
industry trade shows, and overviews of significant new
product introductions. Plus, in 1988, COMPUTEI's PC
Magazine will begin publishing the winning programs
from our $15,000 PC Programming Contest!
COMPUTEPs
PC magazine
fOn leM PC* AND COM PAT
Starting with the September 1987 issue (available
August 1), COMPUTEI's PC Magazine will be on news-
stands nationwide for only $12.95 per copy, including a
SVi-inch disk bound right into the magazine. Or it can
be delivered directly to your mailbox six times a year
for only $59.95 — a savings of over 20 percent.
Subscribers even get a choice of receiving a standard
5 y* -inch disk or the new SVb-inch disk with their
magazine.
As a special bonus, if you order a prepaid
subscription before October 1, you'll get the first
issue absolutely free! That's seven issues for $59.95!
To order, call TOLL FREE 1-800-247-5470. (In Iowa
1-800-532-1272.) Or send check or money order to:
COMPUTEI's PC Magazine
P.O. Box 10767
Des Moines, lA 50340
COMPUTE!^ Publicationsjnc®
Part of ABC Consumer Magozines, fnc. ^^^r
One of the ABC PuOhshing Companies
IBM Compatibles
The Universe Expands
Keith Ferrell, Features Editor
The compatibles are here. Offering
options including large amounts of
memory, bright colors and graphics,
speeds sometimes in excess of the
IBMs', and various software bundles,
clone manufacturers are targeting
American consumers with PCs that
do more for less money. Will the PC
become this year's hot electronic com-
modity? More than one manufacturer
is betting on it.
Over the six years since IBM intro-
duced its first PC, third-party man-
ufacturers have cloned just about
every part of it, including the name.
PC by now has come to stand
for a computer capable of running
programs that are managed by MS-
DOS — Microsoft Disk Operating
System, And in the PC universe,
MS-DOS — thanks to the dozens of
manufacturers and hundreds of soft-
u^are developers and publishers
who have made it the standard —
could almost be an acronym for
Microsoft's Domi^iant Operating
System.
Today, with MS-DOS and PCs
the most widely accepted operating
and hardware systems in American
business, a large segment of the
public has been exposed to comput-
ers that combine extravagant
amounts of mass storage, spacious
RAM, high operating speeds, and a
number of sophisticated software
applications.
14 COMPUTII July 1987
From the office PC, consumers
have taken home terms such as
spreadsheet, database, word pro-
cessing, and desktop publishing.
Now, as a result of sharp and on-
going declines in the prices of both
memory and hardware, they are be-
ginning to take home their own
PCs. The Personal Computer is on
the verge of acquiring a personal
market.
By the end of this year, con-
sumers will be able to select from a
large number of low-priced, high-
power machines produced and dis-
tributed by established, healthy
players such as Tandy/Radio
Shack; young and aggressive com-
panies such as Leading Edge, PC's
Limited, Franklin, Victor, and Blue
Chip; plus companies new to the
American market, such as Vendex
and Amstrad. Of the companies al-
ready established among consumers,
both Atari and Commodore have an-
nounced MS-DOS PC compatibles.
In large part, the spread of MS-
DOS machines to the home and
personal market is being powered
by inexpensive offshore manufac-
ture, either of the entire system or
of components that would be far
more expensive from domestic
sources. Some companies achieve
additional cost savings — and con-
sequently lower retail prices — by
substituting plastic for metal hous-
ings, and by providing lower-cost
keyboards, mice, and other
peripherals.
Some firms — PC's Limited, for
example — use higher-end compo-
nents, but deliver lower prices
through direct-to-customer market-
ing, eliminating the overhead that
an in-place retail distribution sys-
tem entails.
PC manufacturers will face
their most severe test, though, in
the retail marketplace — computer
stores or mass market mechan-
disers — and discover whether or
not there really is a wide consumer
demand for MS-DOS PCs.
That Commodore and Atari,
the two veterans of the home mar-
ket, are scrambling to establish
themselves as compatibles con-
tenders, is an indication of the seri-
ousness with which MS-DOS
computers are being taken.
Commodore already has its
MS-DOS machines on the market.
The computers have found solid
consumer response in Europe and
Canada for several years, although
at $999 for the single 360K disk
drive, 512K RAM (expandable to
640K) PClO-1, and at $1,999 for the
twin-drive, 640K RAM PClO-2
{monitors extra for either system),
Commodore is priced higher than
most of the newcomers to the mar-
ket. Atari, on the other hand, has
promised a package that undercuts
even the lowest-priced compatibles.
Announced at last January's
Consumer Electronics Show (CES),
Atari's PCs come in two versions.
For $499, the company hopes to
deliver 512K RAM (expandable to
640K on the motherboard), a sepa-
rate 25 6K RAM for video control, a
single 5y4-inch disk drive, and a
built-in color graphics adapter. In
its announced $699 package. Atari
will include a monitor and an en-
hanced graphics adapter (EGA), for
a package more than competitive
with any compatible on the market.
To compete, however, the ma-
chines must reach the market, and
Atari has been plagued by delays in
getting its hardware ready. Sched-
uled to appear on the market this
spring, the roll-out date for Atari's
PCs has been pushed back at least
to late summer. And once the hard-
ware is complete, there is a built-in
90-day delay as the machine awaits
FCC approval. If those delays pile
up too much longer, Atari runs the
risk of missing the all-too-crucial
fourth quarter, with what is expect-
ed to be a high consumer demand
for Christmas PCs.
Both Commodore and Atari
are aware as well that there are
literally hundreds of compatibles-
makers already on the market with
low prices and increasingly aggres-
sive marketing strategies. If this is
the year of the PC, companies that
don't get early exposure and shelf
space, or are perceived as pricey,
may find that a well-established
name is not enough.
Pricing And Personality
The main PC competition is found
in the $500-$2,000 price range,
with many manufacturers discover-
ing the greatest action among fea-
ture-loaded machines at the upper
end.
PCs costing less than $1,000
tend to offer a single disk drive,
512K RAM, room for expansion
both on the motherboard and
through slots, and a monochrome
monitor, along with software pack-
ages that usually include a version
of MS-DOS, but otherwise vary
from manufacturer to manufacturer.
The look and feel of the ma-
chines vary as well. Shoppers who
take the time to learn their way
around the various machines will
discover that each PC has a person-
ality of its own, reflective some-
times of manufacturing decisions,
but also of the parent company's
approach to the market.
Amstrad, for example, is an
Amsirad has already sold many PCs m Europe. Us 1512 series offers a small foot-
print, and two operating systems, including Digital Research's GEM.
English electronics company enter-
ing the American computer market
this year after finding phenomenal
success throughout Europe, Its PC
1512 series includes three 512K
RAM configurations priced below
$1,000: the DM, with a single 360K
drive and monochrome monitor for
$799; the DD, with a dual drive and
a monochrome monitor for $899;
and the SDC, with one disk drive
and a color monitor for $999. The
company breaks the $1,000 price
point with a dual drive (and color
monitor) for $1,099. All Amstrad
computers come with a large bun-
dle of software, as well as a mouse.
One of the first things consum-
ers will notice about Amstrad's PC
1512 series is the lightness of the
computer's compact plastic box.
Weight and size reductions
were achieved not only with plastic
housing, but also by moving the
computer's power source and fan
into the monitor, which fits into a
recess on top of the computer box.
Design can have marketing ramifi-
cations as well — Amstrad buyers
are locked into Amstrad monitors,
and the company does not sell any
of its components individually,
"Amstrad has a system not
unlike racked stereo equipment,"
says Wally Amstutz, vice president
of marketing, "Everything comes in
two boxes — connect the system and
plug it in, and you're ready to go,"
The self-contained approach
has paid off for Amstrad elsewhere.
In England alone, Amstrad has
achieved a PC market share compa-
rable to IBM's, without shrinking
IBM's share.
"There is a wide consumer
base that IBM and the other high-
priced manufacturers haven't
tapped yet," says Amstutz.
Amstrad will be seeking to tap
that market through a network of
independent dealers that will in-
clude computer stores and specialty
electronics retailers.
Some manufacturers feel that if
the PC is to find a mass market
measured in millions of units sold
each year, PCs need to be sold
through leading retail chains. That's
the strategy being put to the test by
Blue Chip Electronics, whose Blue
Chip PC XT is currently sold in
chains including Target and Caldor,
with tests planned for marketing
through Toys "R" Us and the nearly
1,000-store Walmart chain.
Because it is seeking exposure
through mass market retailers. Blue
Chip hews more closely to lower-
end price points than some of the
other compatibles makers,
With 512K RAM (expandable
to 640K on the motherboard) and a
single 360K 5 'A -inch disk drive, the
Hyundai-built Blue Chip XT cur-
rently retails for $699, with a green
monochrome monitor available for
July 1987 COMPUTEI 15
an additional $99. The XT can
also be used with a television
set serving as its monitor.
Aware that the market is
broadening and that price is a
key factor, Blue Chip is plan-
ning some product changes
for later this year. At press
time, the nature of those
changes had not been made
final, but it is believed that
they will include a price cut of
at least $100, enhancements
of the hardware, and a bun-
dled package of software.
Even the packaging will
be designed with mass market
retailers in mind, states Blue
Chip founder and president
John Rossi,
"It comes in a four-color
box with a handle," Rossi says,
"and, since it can be run on a
television, is pretty much self-
contained." Rossi's hopes are
that, since the box contains
DOS and a large bundle of
applications software as well,
the Blue Chip will be seen as a one-
stop computer purchase.
Leading Edge has established
itself over the past year as a con-
tender with its $1,075 Model D.
Delivering 512K RAM (expandable
to 768K), two 5 'A -inch disk drives,
a Selectric-style keyboard, and a
monochrome monitor, the Model D
also comes complete with MS-DOS
3.1 and Leading Edge's proprietary
software bundle. The Model D is
available in a color monitor config-
uration, although the company is
planning to introduce a proprietary
EGA monitor, with an anticipated
retail price below $500. John Sulli-
van, vice president of Leading Edge
hardware products, notes that the
company is marketing its computer
through a combination of computer
retailers, value-added resellers
(VAR), specialty stores, and office
products stores.
"Leading Edge has always
based its marketing strategy on in-
cluding in the basic package items
that other manufacturers offer only
as options," Sullivan states.
There is already one major
player involved in the mass market
retailing of PCs. That, of course, is
Tandy; through its Radio Shack
chain of electronics and computer
stores, it offers potentially more
than 7,000 outlets for Tandy's
16 COMPUTEI July 1987
Tandy feels confident that its PCs will find a large
market through the company's huge Radio Shack
chain of retail operations. The Tandy 1000 SX offers
3S4K RAM (expandable to 640K), two 360K disk
drives, and is bundled with DeskMate II software.
computers,
Tandy's under-$ 1,000 PCs in-
clude the 1000 EX, which delivers
256K RAM (expandable to 640K
through Tandy's Memory PLUS
Expansion Adapter) and a single
360K 5V4-!nch disk drive for $599,
and the SX, with two 360K disk
drives and 384K (also expandable
to 640K) for $999. Monitors are sold
separately, in monochrome at $150,
and in color at $250. A software
bundle is included with the
computers.
A marketing advantage that
Tandy may enjoy in addition to its
large retail presence is its existing
penetration of the business com-
munity. Ed Juge, director of market
planning, estimates that Tandy sold
more than a quarter-million MS-
DOS computers in 1986, and antici-
pates even higher figures this year.
Of those 1986 sales, a substantial
percentage was to small and
medium-sized businesses.
"We sold more MS-DOS busi-
ness computers last year than any-
body except IBM," Juge maintains.
Exposure to Tandy computers
in the workplace will go a long way
toward persuading consumers to
shop Radio Shack for their home
computer, the company feels.
While many of the,compatibles
manufacturers and marketers are
busy seeking or shoring up
their retail outlets, PC's Limit-
ed, of Austin, Texas, has
found success with a wholly
different approach.
The company eschews re-
tail altogether, pursuing an ag-
gressive direct-to-consumer
marketing program based
upon a heavy advertising pres-
ence in computer publications.
The direct-response ads pro-
vide a toll-free phone number,
putting the consumer in con-
tact with the manufacturer —
and the manufacturer in con-
tact with the actual end user —
allowing for custom configura-
tion of each system, if desired.
In the under-$l,000 mar-
ket, PC's Limited offers its
Turbo PC, which includes
640K on the motherboard,
two 360K floppy disk drives,
an AT -style keyboard, and a
monochrome monitor.
Elimination of the over-
head that accompanies distri-
bution through traditional retail
outlets has enabled PC's Limited to
retain metal housings and full-sized
keyboards, two features that many
compatibles manufacturers com-
promise in order to keep prices low.
"Our philosophy is to make
the best computers with the best
components, and make them af-
fordable," says the company's
founder, chairman, and chief exec-
utive officer Michael Dell.
While PC's Limited's primary
market is the medium-sized busi-
ness, the company has found some
success among individual consum-
ers as well.
A new player in the American
market is Vendex Pacific, whose
Turbo-888-XT was expected to be
on sale in mid-May.
Harry Fox, Vendex's vice presi-
dent in charge of U.S. operations,
notes that the dilemma facing man-
ufacturers seeking to tap the con-
sumer market is that market's
diversity.
"To succeed," Fox says, "a
company has to have a machine
that will serve the first-time user,
but also meet the needs of the more
experienced computer user,"
Priced at $995, Vendex's Turbo-
888-XT is configured with 512K
RAM, two 360K floppy disk drives,
a full-size AT keyboard, MS-DOS
GET UP
PROGRAMS EACH YEAR-
when you subsaibe now to COMPUTE!
w"V
w^.
n .1 nach -
<i'
first tiurdlc is fLnriina
nut IkBi iTAJ- tL...Jr '
fin^U till* ... ._ ...,^.,
a SJfe Pile*? ^o put iLht code, though
the ii^ade'tlf buffer iS «n obViOuf
cholcfl, (t s iQCdteil in difrfreni
pl4C*> ■on various K^Chines. n\i putting
KL irifff Ci''f4lfi prablt'HS for ttpr
Ujtrs^ Insitajl, thv Proafrfjtfcr gs«s
236 bvirs «! SaSEC pragraputlng spac#.»
.-t*i)r*,iT insmiJ lh» routin* in
HCHory. the Prflofr'fider checks to se*
whiCK conpuler you're using. Th^n »t
Stores thfr ML i\ the botton ftii EftSIC
MeHorv »nd pr&TettS itself bw novin^
the cONtpulcr's start-or-flrtSlC pointer
TO a sffot 2SB hytfs higher in henorir.
OncB that's tfon*. th* ppoofr#ad*r
4Ctiwj,Tf.t th« ni. routine and treses
" ' "itt. WEH. Hoif th»5 bfCJUSf the
• der avprwitfj its rirjt few
tnex. It 's critical n«t ip
anytsioi frOK the fii-Jt portion
sur
Subscribe to COMPUTE! today through this
special introductory money-saving offer, and
you'ff be getting a lot more than just another
computer magazine. That's because each issue
of COMPUTE! comes complete with up to 20
all-new, action-packed programs.
Subscribe now and you can depend on a
steady supply of high quality, fun-filled
programs like Hickory Dickory Dock,
Switchbox, TurboDisk, Home Financial
Calculator, Turbo Tape, SpeedScript,
SpeedCalc, and hundreds of other educational,
home finance, and game programs the entire
family can use all year long.
The superb programs you'll find in each
issue are worth much, much more than the
low subscription price.
And there's more to COMPUTE! than just
exciting new programs. Month after month,
COMPUTE!'s superb articles deliver the latest
inside word on everything from languages to
interfaces.. .from programming to disk drives.
Whether you're a novice or an experi-
enced user, COMPUTE! is the magazine for
you. So subscribe today. Return the enclosed
card or call 1-800-247-5470. (In Iowa,
1-800-532-1272).
Do it now.
J3 -XI. 7» "
TJ 1^477. at.
■• tics.**
■• 74L1.*«
■• -itm.mm
ACT NOW
ANDSAS
I ^^^ ^^ -III , TTf-"— **™"*'"
iri-iL
COMPUTE! Publications, Inc. ®
One of the ABC Publishing Companies ^^^T
If attached order card is missing, write; COMPUTE! RO. Box 10955, Des Moines, iA 50950
When you want to talk computers..
ATARI COMPUTERS COMMODORE COMPUTERS MS/DOS SYSTEMS
Atari Computers
800 XL 64K Computer $63.99
65XE 64K Computer 94.99
130XE 132K Computer 129.00
520ST Monochrome System 519.00
520ST Color System 749.00
Atari 1040 ^r>-^
Color System *879
Includes: 1040ST, 1 mb RAM with 3V2"
drive built-in, 192K ROM with TOS, Basic,
Logo, ST language, power supply and
color monitor.
ATARI SOFTWARE
Access
Leaderboard Golf 26.99
Accolade
Fight Night 19.99
Activfsion
Music Studio 34.99
Antic
Cad 3-D 32.99
Batteries Included
Paperclip w/Spellpack 39.99
Degas Elite 48.99
Epyx
World Karate Championship... 24.99
Infocom
Zork Trilogy 44.99
Microprose
Top Gunner 19.99
F-15 Strike Eagle 24.99
Origin Systems
Ultima 4 39.99
Paradox
Wanderer {3-D) 27.99
Psygnosis
Deep Space 34.99
TImeworks
Wordwriter ST 51.99
VIP
Professional (GEM) 144.00
COMMODORE SOFTWARE
Amiga 2000 System
Includes: A2000, 1Mb RAM, SVi" Floppy,
A1080 Monitor, Mouse, DOS,
A2088, Bridge Board $ H QQQ
Commodore-64C 64K Computerl 79.00
Commodore-64C Sys. w/1802C.5 19.00
Commodore-128 128K Computer249.00
Commodore-128 System Pkg.. ..739.00
Amiga 1000 Computer 899.00
Amiga 500 Call for pricing
Activision
Hacker 32.99
Broderbund
The Print Shop 29.99
The Toy Shop 39.99
Commodore
Textcraft w/Graphic Craft 59.99
Assembler 79.99
Enhancer DOS 1.2 14.99
Discovery Software
Marauder Back-up 32.99
Electronic Arts
Deluxe Paint 69.99
Deluxe Print 74.99
Instant Music 34.99
Deluxe Video 69.99
Infocom
Hitchhiker's Guide 31.99
IVIicro Illusions
Dynamic-Cad 349.00
IVtindscape
Halley Project 31 .99
Deja Vu 34.99
IVIicro Systems
Analyze Version 2.0 119.00
Scribble 64.99
On-Line/Comm 49.99
Sublogic
Flight Simulator 37.99
V.I.P.
V.I.P. Professional 139.00
AT&T 6300 from $1299.00
Compaq from 1699,0
IBM-XT from 1099.00
IBM-AT from 2499.00
Leading Edge from 999.00
NEC Multispeed from 1499.00
Panasonic Business Partnerfrom 799.00
Toshiba 1100 Plus from 1699.00
PC-TOG 20 Meg ^^^^
XT-Compatible ^999
MULTIFUNCTION CARDS
AST
Six Pak Plus PC/XT 169.00
Hercules
Color Card 159.00
Graphics Card Plus 209.00
Rfth Generation
Logical Connection 256K 329.00
Quadram
Expanded Quadboard 119.00
Video 7
EGA Video Deluxe 389.00
Zucl<erboard
Color Card w/Parallel 89.99
Ashton-Tate
d-Base 111 + 399.00
5th Generation
Fastback Utility 89.99
IIVISI
Optimouse w/Dr. Halo 99.99
Lotus
Lotus 1-2-3 329.00
iVIicroPro
Professional 4.0 w/GL Demo 239.00
IVIicrostuf
Crosstalk XVi 89.99
P.F.S.
First Choice. 119.00
Word Perfect Corp.
Word Perfect 4.2 209.00
MS/DOS SOFTWARE
y
COIVIPUTER IVIAIL ORDER
When you want to talk price.
MODEMS
Anchor
6480 C64/128 1200 Baud $119,00
VM520 ST520/1040 1200 Baud. 129.00
Atari
XIVI301 300 Baud 44.99
Commodore
Amiga 1680-1200 BPS 169.00
CBM 1670 &C-128) 99.99
Everex
Evercom 1200 Baud Interna! 109.00
Hayes
Smartmodem 300 External 139.00
Smartmodem 1200 External. .....389.00
Practical Peripherals
1200 BPS External 159.00
Quadram
Quadmodem II 1200 Baud 299.00
Supra
MPP-1064 AD/AA C64 69.99
1200AT 1200 Baud Atari 139.00
MONITORS
U.S- Robotics
1200 Baud.^109.00
2400 Baud Internal $189,00
Amdek
410 12" TTL Monitor 149.00
Video 310A Amber TTL 139.00
Commodore
Commodore 1902 299.00
Amiga 1080 Hi-Res Color 269.00
MagnavQX
8505 RGB/Composite 199.00
515 RGB/Composite 289.00
NEC
12" TTL Green or Amber 109.00
JC-1401P3A Multi-Sync 579.00
Princeton Graphics
MAX-12 12" Amber TTL 169.00
Taxan
Model 124 12" Amber 119.00
Zenith
ZVM 1220/1230 (ea.) 99,99
DRIVES
Atari
1050 SS/DD (XUXE) *139.00
AA354 SS/DD Disk (ST) $119.00
SHD204 20 Meg ST Hard Drive579.00
Allied Technology
Apple Half-Heights 109.00
Commodore
Amiga 1010 3V2" 219.00
Amiga 1020 SVa" 189.00
1541C 179.00
1571 239.00
CSI
10 mb (64-128) 1099.00
Indus
GT Disit Drive 179.00
Microbotics
20 mb Hard Drive (Amiga) 1299.00
DISKETTES
Racore Jr. a-^r^r^
Expansion ^299
Seagate
20 MB ST-225 Hard Drive Kit. ...379.00
Supra
30 Meg Hard Drive (ST) 799.00
20 Meg Hard Drive (ST) 569.00
Xebec
20 mb (Amiga) 899.00
Maxell
MD1-M SS/DD 51/4" $9.99
MD2-DM DS/DD 51/4" 10,99
MF1-DDM SS/DD 3Vz" 12.99
MF2-DDM DS/DD 31/2" 21.99
Sony
MD1D SS/DD 51/4" 8.99
MD2D DS/DD 5Va" 10.99
MFD-100 SS/DD 31/2" 13.99
MFD-200 DS/DD 3V2" 20.99
Hewlett-Packard Calculators
28C Scientific Pro 199.99
18C Business Consultant 139.95
12C Slim Financial 74.99
PRINTERS
Atari
1020 XUXE Plotter $30.99
1025 XUXE Dot Matrix 129.00
XDM121 Letter Quality 209.00
XMM801 XL/XE Dot Matrix 199.00
XMM804ST Dot Matrix 189.00
Brother
M-1109 100 cps, 9 pin 209.00
Citizen
MSP-IO 160 cps, 80-Column 299.00
Premier 35 cps Daisywheei 499,00
C.ltoh
8510-SP 180 ops, 80-Column Call
Epson FX-86E ._._
240 cps Dot Matrix ^349
Epson
LX-86 120 cps, Dot Matrix 199.00
FX-286E 240 cps, 132-coiumn Call
EX-800 300 cps, 80-column 429.00
LQ-800 180 cps, 24-Wire Head Call
Hewlett Packard
Thinkjet 399.00
Juki
6300 40 cps Daisywheei 659,00
6100 10 cps Daisywheei 389.00
5510C Color Dot Matrix 349.00
NEC
Pinwriter 660 24 Wire 489.00
Pinwriter 760 24 Wire 689.00
Okidata
Okimate 20 Color Printer 129.00
ML-182 120 cps, 80-column 239.00
ML-192+ 200 cps, 80-coiumn., .369,00
Panasonic
KX-1080i 120 cps, 80-column. ...219.00
KX.1091i 180 cps, 80-coiumn. ,.,299.00
KX-1592 180 cps, 132-column... 439.00
Star Micronics
NX-10 120 cps, 80-column 209.00
NX-IOC 120 cps, C64 lnterface.219.00
NX-15 120 cps, 132-column 369.00
Toshiba
P321 216 cps, 24-Pin Head 479.00
In the U.S.A. and in Canada
Call toll-free: 1-800-233-8950.
Outside the U.S.A. call 717-327-9575 Telex 5106017898
Educationai, Governmental and Corporate Organizations call toll-free 1-800-221-4283
CiVlO. 477 East Third Street, Dept. A207, Williamsport, PA 17701
ALL MAJOR CREDIT CARDS ACCEPTED.
POLtCY: Add 3% (minimum S7.00) shipping and handling. Larger shipmenis may require additional charges. Personal and company checks require 3 weeks to clear
For faster defivery use your credit card or send cashier's check or bank money order. Pennsylvania residents add 6% sales tax. All prices are U S A prices and are
subject to change and all items are subject to avaiabihty. Defective software will be replaced with the same item only. Hardware v/ill be replaced or repaired at our discre-
tion within the terms and limits of the manufacturer's warranty. We cannot guarantee compatibility. All sales are final and retumed shipments are subject to a restocking fee
Through direct-to-consumer marketing, PC's Limited has carved out a solid, primarily
business market for its compatibles. PC's Limited model 286 includes "SmartVieiu,"
a digital display that reports computing speed and diagnostics.
Vendex's computers, manufactured by Samsung of Korea, come complete with an on-
screen manual, aimed at teaching the user lohile the computer is in use. The Turbo-
S88-XT features a full-size AT keyboard, SUK RAM, two 360K floppy disk drives,
and MS-DOS i.l.
3.2, and a monochrome monitor.
The system is available with an
RGB color monitor at $1,295.
Franklin Computer has been
perhaps best known for its ACE
series of Apple compatibles. With
its $799.95 PC-8000, Franklin
Computer is now positioning itself
for the PC consumer. Offering two
disk drives, 512K RAM (expand-
able to 640K), and MS-DOS 3.1, the
system is configured to support a
monochrome monitor, available for
$139.95. Franklin also offers a sin-
gle disk drive system, the PC-6000,
for $699.95.
Having achieved substantial
success in the cash-register, adding-
machine, and calculator markets,
Victor Technologies is entering the
PC field, Victor's under-$l,000 PC,
called Champion, offers 640K
RAM, DOS 3.1, and a single disk
drive for $799. A monochrome
monitor is available for $119.
Bundles Of Software
Like many of the manufacturers
pursuing the PC market, Vendex
has added a bundle of software to
its system including a tutorial
aimed at assisting the first-time
computer user.
Called Headstart, the propri-
etary software was designed for
Vendex by Executive Systems, and
includes popular applications such
as word processing, spreadsheets,
RAM-resident pop-up features, and
a program designed to train the
new computer user in the Turbo-
888-XT's operation.
"Essentially," Fox states,
"we've put the manual onscreen,
letting the consumer guide himself
through the tutorial using only the
cursor and enter keys. The program
lets consumers learn to use their
computer by actually using their
computer." Vendex hopes that the
package will live up to its descrip-
tion as "user seductive."
Once acquainted with the op-
eration, users can extend the
"point-and-shoot" approach to
utilities customized by Vendex for
the Turbo-888-XT. Experienced
computer users, of course, need not
employ the tutorial.
Amstrad's approach to soft-
ware includes bundling two operat-
ing systems — the traditional MS-
DOS 3.2, and Digital Research's
DOS Plus and GEM (Graphics En-
20 COMPUTE! July 1987
vironment Manager), which to-
gether form a mouse-driven
graphics package. Included in Am-
strad's GEM are applications such
as GEM Paint for creating pictures,
and GEM Desktop, with pop-up
applications including a calculator
and a clock.
"We think the public will be
very excited about the GEM envi-
ronment," notes Wally Amstutz.
"And Amstrad will also be offering
a window-driven BASIC that
should find a good consumer
response."
Blue Chip is currently in nego-
tiation for its software package,
which, according to John Rossi, will
provide a word processor and a
database manager. MS-DOS is in-
cluded. Through arrangements
with software manufacturers. Blue
Chip's customers will be able to use
coupons toward the purchase of
more complete manuals and sup-
port from the software vendors
themselves.
Leading Edge includes DOS
3.1 and a proprietary word process-
ing program in its Model D
package.
At Tandy, the bundled soft-
ware is called Deskmate U and
comes complete with a word pro-
cessor, spreadsheet, database, tele-
communications program, calendar,
and an electronic mail program.
MS-DOS 3.2 is also included with
Tandy computers.
PC's Limited, because of its
targeting of the business market,
includes only system software with
its package.
Victor is providing word pro-
cessing and spreadsheet software
with its Champion computer.
Whether or not software bun-
dles will contribute to increased
sales remains to be seen, but the
variety of bundles shows that each
manufacturer is developing its own
software, as well as hardware,
profile.
Consumer response will finally
determine what the public actually
wants or will come to expect in
terms of bundled software accom-
panying their computers.
Memory
One thing that consumers do al-
ready seem to want from their PC is
a lot of memory.
The PC industry standard now
is the 512K RAM motherboard, but
more and more companies are
either offering initial 640K mother-
boards, or are designing their ma-
chines to make them easily
expandable to 640K and higher
RAM levels. That much memory is
required to run large spreadsheet
and text-processing operations
along with RAM-resident programs
which offer keystroke access to note-
pads, alarm clocks, calendars, and
other conveniences without leaving
the program being run.
If large amounts of RAM are
vital to successful competition in
the PC marketplace, vast amounts
of storage are increasingly impor-
tant. Many of the most popular PCs
come with built-in hard disks capa-
ble of storing 10, 20, or more mega-
bytes of programs and information.
Amstrad, for example, has al-
ready found the greatest consumer
response to be for its 20-megabyte
PC 1512 HDC with a color monitor,
a configuration retailing for a still-
competitive $1,799,
Wally Amstutz notes that Am-
strad has been pleasantly surprised
by the enthusiasm for its larger
configuration.
"Buyers are becoming more
knowledgeable about what they
want in a computer," he says, "and
their awareness of the options a
hard disk offers are coloring their
decisions." Among those options
are fast loading of programs direct-
ly from hard disk storage to RAM,
and easy internal storage of both
applications programs and their
own work.
PC's Limited has found its
greatest success with its 286 line of
compatibles carrying an internal 30
megabytes of storage.
Franklin's PC-8000 is com-
plete with a power supply able to
support 10- and 20-megabyte hard
disks.
As Vendex prepares for the
debut of its Turbo-888-XT, its em-
phasis is focused upon the intro-
ductory, floppy-disk-drive-only
configuration.
"We are definitely planning to
offer a hard disk configuration
before the year is out," notes Ven-
dex's Harry Fox. "And the system is
set up now with five full expansion
slots available for consumers who
want to go ahead and install a hard
card."
Leading Edge is taking mass
storage one step further than hard
cards or hard disks. Having upped
its hard-disk option from 10 to 20
and again to 30 megabytes, the
company is now offering what it
calls the "Leading Edge Infinite
Memory System." Rather than a
hard disk, the Infinite Memory con-
figuration employs a Bernoulli Box.
Developed by Iomega, and
named for the eighteenth-century
Swiss physicist and mathematician
Daniel Bernoulli, the Bernoulli Box
utilizes a fixed cartridge reader and
removable mass-storage cartridges
rather than fixed disks.
"Each Bernoulli cartridge
holds 20 megabytes of memory,"
observes John Sullivan. Leading
Edge provides two cartridges with
the Infinite Memory System, which
is an upgrade of the Model D PC.
Additional 20-megabyte cartridges
are available for $49.95. The Infi-
nite Memory System itself sells for
$1,995.
Also entering the removable
mass-storage market is Victor,
whose VPC III 286 carries a remov-
able 30 -megabyte fixed disk drive,
with 640K RAM expandable to a
megabyte. Victor anticipates mar-
keting the VPC III 286 for $2,395.
Expandability
Another question addressed by the
PC manufacturers is expandability.
While few manufacturers as yet see
the general public as eager to take
screwdrivers in hand, open their
computers, and begin swapping
cards and chips, all are aware that a
portion of their market is interested
in performing its own upgrades.
Expansion slots, serial and par-
allel ports, and peripheral connec-
tors are becoming important
features emphasized in product
literature.
"We took a lot of care," says
Harry Fox of Vendex, "to offer ev-
ery essential expansion option, and
some extras."
Fully configured, the Vendex
Turbo-888-XT leaves five standard
IBM card slots open, allowing con-
sumers to custom-configure their
own upgrades.
Amstrad has eliminated the
need for removing the computer
housing. An access port is built into
the top of the machine, enabling
owners to add cards easily. The PC
July 1987 COMPUTEI 21
1512 provides three expansion slots.
With the Leading Edge Model
D, consumers have the option of
upgrading with four IBM slots.
Leading Edge will also be offering a
proprietary EGA (Enhanced Graph-
ics Adapter) within the next year.
Tandy expandability varies
with the model purchased. Their
n:\odel 1000 EX can be expanded
only with Tandy's proprietary One
PLUS and Two PLUS expansion
boards, while the 1000 SX has five
10-inch expansion boards available.
Service
Manufacturers are increasingly
aware of the premium consumers
place upon service. This is especial-
ly true with electronic products,
and manufacturers are responding
to consumer expectations.
While PC's Limited, as a
direct-to-consumer seller, has re-
lied previously on telephone tech-
nical support for customer
problems, the company is in the
process of introducing an optional
on-site service contract.
"For $35 the first year, our cus-
tomers will be able to have a service
technician come to their site should
there be a hardware problem,"
states Michael Dell.
Dell feels that service is essen-
tial for manufacturers who intend
to grow with their market. "Cus-
tomers have to be aware that there
is more to your company than just
'Here's your box,' " he says.
Leading Edge dealers
function as service centers for
that company.
At Vendex, the on-site
approach has been extended
to the initial installation of the
machines.
"We're aware of the trepi-
dation that some consumers
feel even after they've bought
their computer," says Harry
Fox. "And while we've ad-
dressed this with our onscreen
training program, we're also
offering on-site installation.
"For $49.95, the customer
can have a bonded installer
come to his home or office and
set up the computer, including
an initial orientation to our
configuration." Vendex will
provide a toll-free number
through which customers can
arrange for further service.
Tandy customers have access
to 166 service locations in the Radio
Shack chain, Ed ]uge notes. If one
of those service centers is not near-
by, the local Radio Shack can for-
ward the computer to a service
center.
Proud of this capability, Ed
Juge says, "Tandy has the strongest
support and service network of any
PC manufacturer, even IBM."
Amstrad will be arranging ser-
vice and support through its net-
work of independent dealers.
At Blue Chip, service is cur-
rently accomplished at the compa-
ny, but a service network will soon
be in place nationwide.
PC warranties and guarantees
vary from manufacturer to manu-
facturer, with most of them offering
a one-year warranty on parts.
Add-On Markets
As Vendex's Harry Fox has noted,
personal computers serve a dispa-
rate market. While the immediate
focus is tapping the large consumer
audience, manufacturers are also
aware of the potential for sales that
can be found in schools and small
businesses.
Tandy's Juge observes, "We
have had a stronger presence in the
schools than a lot of people real-
ize." Stressing Tandy's ongoing
commitment to the educational
market, Juge points out that the
company is offering the same 20-
percent school discount offered by
IBM's new Syslem/2 computers are seen by some as
an attempt to seal off the high-end business market,
and by others as an invitation to create the next gen-
eration of clones and compatibles. The new Model 30
offers 640K RAM, color graphics, and three slots.
Apple, widely recognized as the
leading supplier of educational
computers.
Amstrad, too, hopes to pene-
trate the school market, although
Wally Amstutz notes that this may
have to wait until the company's
network of dealers is more firm.
The company's preference is to per-
mit its distributors to market to
their local educational systems and
institutions.
PC's Limited has always seen
the non-Fortune 500 business mar-
ket as among its prime customers,
and will continue to do so, says
Michael Dell, although he sees his
company increasingly going head-
to-head with IBM and Compaq for
the upper-end business market as
well. At present, the company's ad-
vanced 3086 line of computers is
seen as offering business customers
a cost-effective alternative to IBM
and Compaq machines.
At Leading Edge, schools are
seen as a natural market, especially
as consumer awareness of MS-DOS
widens. The feeling is that parents
are going to want their children to
learn computers that use the same
operating system that they will face
in the business environment.
Whither IBM?
It was IBM that gave the Personal
Computer its name in the first
place. With the company's an-
nouncement of its new Personal
System/2 and the Microsoft
Operating System/2 that is
being developed for it, many
feel that IBM is ceding the
personal computer market to
the compatibles and clones.
IBM's twin 3V2-inch,
720K disk drive Model 30 pro-
vides 640K RAM and is priced
at $1,695; with one disk drive
and a 20-megabyte hard disk,
it lists for $2,295. Other Sys-
tem/2 models offer a mega-
byte or more of RAM, 3V2-
inch disk drives carrying 1.44
megabytes, and fixed-disk
storage devices with as much
as 115 megabytes of memory.
Prices for the various IBM
configurations climb quickly
and steeply, reaching a whop-
ping $10,995 for the 2-mega-
byte RAM (expandable to 16
megabytes), 115-megabyte
hard disk Model 8580-111.
22 COMPUTE! July 1987
Exciting & Neivl
f
Commodore 64/128 Books
from COMPUTE!
COfVlMOOORE
64/128
POWER
BASIC
COMPUTEi'sE
THIRD BOOK
OF CQMMniKIRE (i4
GAMES
Get more power, education, and relaxation from your Commodore 64 or 128 withi ttiese
new books from COMPUTE!. And, as always, the programs are thoroughly tested and easy
to enter using our special program entry system. (Disks are available, too.)
COMPUTEI's Commodore 64/128
Power BASIC
Edited
Collected In this one volume are more
than two dozen short BASIC programs
from COMPUTErs Gazette's popular
monthlv column, "Power BASIC." In-
cluded are utilities that odd an SK RAM
disk; read and write to disk sectors;
make programs read joysticks more
quickly; and automatically generate tine
numbers. There ore also programs such
as "Stop and Go," which creates a
pause button to temporarily halt a pro-
gram, and "Time Clock," which puts a
digital clock on your screen. There is a
companion disk available for $12.95
which includes ali the programs from
the bool<. (99BBDSK)
$ 1 6.95 ISBN 0-87455-099-8
COMPUTEI's More Machine Language
Games for the Commodore 64
Edited
Seven of the best machine language
gomes for the 64 have been gathered
into one volume in this follow-up to the
popular COMPUTE/'s Machine Language
Games for the Commodore 64. Selected
from recent issues of ODf^PUTEi and
COMPUTEI's Gazette, the games range
from the frantic "Prisonball" to the
delightful "Biker Dave." This is more than
just a collection of exciting fast-action
games, though, because complete and
commented source code for each pro-
gram is included in the book. Machine
language programmers can see exactly
how eoch game is written and what de-
sign techniques are used, A disk is avail-
able for $12.95 which includes all the
programs in the book, including source
code. (947BDSK).
$16.95 ISBN 0-87455-094-7
COMPUTEI's Third Book of Commodore
64 Games
Edited
COMPUTE! Publications, the leading pub-
lisher of programs for the Commodore
64, has brought together another excit-
ing collection of nerve-tingling games
that will delight the whole family — from
preschoolers to teenage arcade fans to
those who enjoy gomes of logic. Clearly
written, with non-technical Instructions,
this book contains hours of challenging
entertainment for beginning computer
fans as well as experienced pro-
grammers. There is a companion disk
available for $12.95 thaf includes all the
programs in the book, (9556DSK),
$ 1 5.95 ISBN 0-6 7455-095-5
These books are now available at your local book or computer store.
You con also order directly from COfvlPUIE! by calling toil free 800-346-6767
(in NY call 212-887-8525) or mailing your order to COfy/IPUTEl Books, P.O. Box 5038,
F.D.R. Station, New York, NY 10150.
Please include S2.00 postage and handling per book or disk. NC residents add 5 percent sales tax and NY residents
add 8.25 percent sales fox.
Please allow 4-6 weeks for delivery.
COMPUTE!^ Publicationsjnc.®
Port of ABC Consumer Mogoziaes. Inc. ^^^^
Port of ABC Consumei' Mogoziaes,
One of the ABC Punishing Componles
COMPUTE! books ore avaiJable outside the United States
from subsidiaries of McGraw-Hill International Book Company.
One of the things IBM is offer-
ing for these prices is enhanced
graphics, enabling both color and
monochrome users to achieve
sharper monitor images.
At the higher end as well, IBM
is betting on business interest in
increased speed, with the Intel
80386 microprocessor delivering
operations at rates up to 350 per-
cent faster than the current AT
processor.
But enhanced graphics is cur-
rently a high-priority item among
the clone and compatibles manufac-
turers, many of whom are already
delivering low-priced machines that
accomplish their processing tasks
faster than do IBM ATs.
What prompted IBM to move
its marketing away from the MS-
DOS standard?
Leading Edge's John Sullivan
notes that IBM had seen its PC mar-
ket share dwindle. "I think the new
IBM machines are signs of the com-
pany taking a definite move to pro-
tect the market they have, and to
buy some time to regroup and re-
gain ground," Sullivan states.
Ed Juge of Tandy sees IBM in
the process of circling its wagons
and attempting to seal off the For-
tune 500 market, which after all,
has been the company's prime mar-
ket throughout its history. Tandy
sees IBM's new machines and oper-
ating systems exerting little effect
on the broad consumer market for
PCs.
"I don't see the new machines
having much impact on the general
consumer," Juge says. "For one
thing, they're expensive. For anoth-
er, it represents a departure from an
existing standard in which people
have a large vested interest in soft-
ware and hardware."
One reason many compatibles
manufacturers are sanguine about
the new machines is that Microsoft
is still refining the OS/2 software.
Delivery of the finished software is
expected to take at least another
nine months, with some observers
speculating that actual completion
of the system could require years.
Michael Dell views IBM's an-
nouncement of its new machines as
less a company marketing decision
than a response to the latest ad-
vances at Microsoft. The software
developer is now serving as the
driving force in the PC environ-
ment, Dell feels.
Since his company is already a
Microsoft OEM (Original Equip-
ment Manufacturer), Dell does not
feel threatened by IBM's
announcement.
Among the advances being
touted by IBM is the higher capacity
SVi-inch disk. Do compatibles man-
ufacturers feel obliged to follow
IBM's lead with such disks?
PC's Limited already offers
3y2-inch drives as an option, as will
Vendex. John Sullivan of Blue Chip
notes that his company has 3y2-
inch drives, and is enthusiastic be-
cause the manufacturing cost of
such drives is less than that for
traditional SVi-inch drives.
Sullivan also observes that
before the SVi-inch drive becomes a
feature demanded by the general
consumer, the amount of software
available for such drives will have
to increase.
Amstrad is taking a wait-and-
see attitude at the moment, al-
though 3V2-inch drives are an
option it is considering. Wally
Amstutz notes that as personal
computer upgrades become more
common, it should be easy for the
consumer or his or her service cen-
ter to enhance the system to meet
new demands.
"If 3y2 becomes something ev-
erybody wants," Amstutz states,
"you can bet that there will be an
upgrade kit on the market for a
couple of hundred dollars."
Should the consumer be con-
cerned that IBM is going to lead the
industry away from MS-DOS
machines?
"Not at all," says Michael Dell,
adding that the OS/2 operating
system is an evolution of the indus-
try standard operating system rath-
er than an abandonment of it.
At present, in fact, OS/2 is ex-
pected to accommodate most MS-
DOS software without difficulty.
Clones II
If IBM does succeed in creating a
new generation of machines and
prompting a new generation of
software, will the clone and compa-
tibles manufacturers be able to fol-
low its lead?
The attitude on the part of
most manufacturers is a resounding
yes. The feeling is that if the public
should want the new system, then
the manufacturers will respond by
making it affordable.
For the present, though, the
emphasis is on establishing once
and for all a market for the personal
computer in the home.
"I think everybody needs to re-
member that this has been tried
before," says Harry Fox, invoking
Coleco's Adam and IBM's own PCjr.
"Those failures set the industry back
a couple of years, and we're really
only just now recovering. But if we
can deliver quality machines to the
public, and show them that they no
longer need to be afraid of comput-
ers, then I think the PC will be the
success story of the next few years in
home electronics."
For more information about the
machines discussed in this
article, the manufacturers may
be contacted at the following
addresses:
Amstrad
c/o Video
1915 Harrison Rd.
Lotigviezv, TX 75604
Atari
1 1 96 Borregas Ave.
Sunni/vale. CA 94086
Blue Chip Electronics
7305 West Boston Ave.
Chandler, AZ 85226
Commodore Business Machines
1200 Wilson Dr.
West Chester, PA 19380
Franklin Computer
Route 73 / Haddonfield Rd.
Pennsauken. N] 08110
]nternational Business Machines
Information System? Group
900 King St. '
Rye Brook, NY 10573
Leading Edge
21 Highland Cir.
Needham Heights, MA 02194
PC's Limited
1611 Headway Cir., Building 3
Austin, TX 78754
Tandy / Radio Shack
1800 One Tandy Center
Fort Worth, TX 76102
Vendex Pacific
40 Cutter Mill Rd., Suite 438
Great Neck, NY 11021
Victor Technologies
380 El Pueble Rd.
Scotts Valley. CA 95066 i
24 COMPUTEI July 1987
SUPPORT FROM COMPUTE! BOOKS
Everything for the Amiga. From BASIC beginner's guides to advanced programming
handbooks, COMPUTE! offers you information-packed tutorials, reference guides,
programming examples, ready-to-enter applications, and games to help you
develop your computing skills on Commodore's Amiga.
COMPU
f^eferepc?
COMPUTE! s AmlgaDOS
Reference Guide
Arlan R. Levitan and Sheldon Leemon
A comprehensive tutorial and reference guide
to the powerful Ami§aDOS— the operating
system underlying the Workbench and
intuition — this bool< offers information useful to
every Amiga owrter. it defines and illustrates all'
DOS commands, and shows you how to create
file directories, access peripherals, run batch
file programs, and avoid "disk shuffle," The
screen- and line-oriented text editors are
explained in detail. Numerous examples and
techniciues explain how to use AmigaDOS to
mal<e operating your Amiga both convenient
and efficient.
$16.95 iSBN 0-87455-047-S
Elementary Amiga BASIC
C. Regena
Here's your introduction to the new and
powerful BASIC on the Amiga personal
computer. The Amiga's impressive graphics,
animation, and sound can be unlocked with the
right commands, and BASIC is the place to
start. Complete descriptions of Amiga BASIC'S
commands, syntax, and organization take you
(rom the t>eginnef level to a full-fledged
programmer. Plus, the book offers you ready-to-
type-in programs and subroutines while
showing you how to write your own programs.
There is a disk svailabSe which includes the
programs In the book, SI 2.95. This title is also
available as a book/disk combination forS29.93
1057-21.
S 1 4.95 ISBN 0-87455-04 1 -6
PROGRAMMER'S
GUIDE
COMPUTE! s Amiga
Programmer's Guide
Edited
Youf tutorial and reference manual to
AmigaDOS, BASIC, Intuition, and other
important software tools which accompany the
new Amiga, COMPUTEI's Amiga Programmer's
Guide is a clear and thorough guide to the
inner workings of this fascinating new-
generation computer. The great speed of its
68000 microprocessor, coupled with the
versatility of the Amiga-specific graphics and
sound, makes the Amiga one of the most
powerful computers available today.
This book is the key to accessing the Amiga's
speed and power.
S 17.95 ISBN 0-87455-028-9
Advanced Amiga BASIC
Tom R. Halfhili and Charles Brannon
This guide to applications programming on
Commodore's new Amiga contains everything
an Intermediate programmer requires to tiegtn
creating sophisticated software on this powerful
machine, including several ready-to-type-in
programs. Clear, yet comprehensive
documentation and examples cover advanced
BASIC commands, designing graphic
applications, generating sound and music, using
the Amiga's built-in speech synthesizer,
creating a user interface, and programming the
computer's peripherals. There is a disk
available which includes the programs in the
book. SI 5.95. (June releasel
SI 7.95 ISBN 0-87455-045-9
Look for these books at your local book or computer store.
Or order directly from COMPUTE!.
Call toll-free 1-800-346-6767 (in NY 212-887-8525).
COMPUTERS
GUIDE TO THE
E G ! N N E R
COMPUTErs Beginners Guide to
the Amiga
Dan fvlcNelll
Written In a lively and entertaining style, this
book teaches you everything a beginner needs
to know to get started quickly with the Amiga
from Commodore. You will learn about setting
up the system, all the most popular types of
software, and details about the hardware.
SI 6.95 ISBN 0-87455-O25-4
Inside Amiga Graphics
Sheldon Leemon
The Amiga. Commodore's powerful new
computer, is an extraordinarily impressive
graphics machine. Easy to use, the Amiga can
produce color graphics and excellent animation.
You'll find thorough descriptions of the
computer's abilities and the hardware required
to create a complete graphics system. Software,
too, is central to the Amiga's power, and
complete tutorials show you how to get the
most from the machine. Ifune releasel
S 1 7.95 ISBN O-87455-040-8
COMPUTERS Kids and the Amiga
Edward H. Carlson
The latest in this bestselling series written by
Edward Carlson, COMPUTErs Kids and the
Amiga, will acquaint you with BASIC. Over 30
sections — all with instructor notes, lessons,
assignments, and lively illustrations — entertain
and amuse you as you learn to program your
new computer. Clear writing and concise
examples make it easy for anyone — children
and adults alike — to painlessly learn BASIC.
llVlay releasel
S 1 4 .95 ISBN 0-87455-04«-3
Please allow 4-6 weeks for delivery
after your order Is received.
COMPUTES Publications Jnc. a
Pon of ABC Cortsumer Wagaiines. Inc
One ot tne ABC Pubi-sirng Comoanies
&2b 7tn Avenue, fitn FI(Xk, Me* vojIc. nv =00:0
COMPUTE! books are available outside the United States from
subsidiaries of i^lcGraw-Hlii international Book Company,
I C':>*«PL'^'^f ' Boc** w-acwo^'; ■! -^tl^ *Ct"t J'-l'^l
TELECOMPUTING
With The Online Services
Selby Botemon, Associate Pubiisher
Every day and night, thousands of
computer users log on to one or more
of a variety of major telecommunica-
tions services to get information, play
games, send mail, buy airline tickets,
chat zoith friends, and take part in a
host of other activities. These national
and international online systems have
shown they're here to stay. Now they
want to prove that they can attract —
and keep — an ever growing member-
ship of computerists.
What will it take to get you to regu-
larly log on to a telecommunica-
tions service with your connputer?
What combination of price, ease of
use, services, features, and other
attractions will bring the great ma-
jority of computer users into the
online fold?
That's the big question that
every telecommunications service
would like to have answered. So
far, there are many thousands of
computer owners who regularly go
online with services such as Ameri-
can People/Link, CompuServe,
Delphi, Dow Jones, GEnie,
PlayNet, QuantumLink, The
Source, and others. But people who
run those systems all know that
they've just begun to tap the poten-
tial market out there.
What are the main stumbling
blocks?
"There is a real fear of the
whole process: of modems, of get-
ting around in these services, and
I especially of getting a big bill at the
26 COMPUTEI July 1987
end of the month," says Steve
Case, a vice president at Quantum,
the company that runs Quantum-
Link, a Commodore-only telecom-
munications service.
But Case and officials at other
major services are confident that
they can solve these problems, that
the future of online computing is
bright, "The way these things tend
to work is that there's a gradual
building process, and then it takes
off," he says.
"As with home video, video-
cassettes initially got a mixed recep-
tion. And then the machines got
better and easier to use, and the
prices came down, and it took off.
There are increasing signs that this
is going to happen in telecommuni-
cations. We're pretty bullish on the
future of it," says Case.
In order to make their services
ever more palatable, online systems
are continually altering the mixture
of ingredients to discover just the
right recipe. While some of the sys-
tems stress the multitude of differ-
ent features they offer, others are
trying to find certain niches of inter-
est in which they can build elec-
tronic forums, marketplaces, and
information centers.
Each service offers its own
variation on a common group of
features; special interest groups
(SIGs) on a variety of topics, online
gaming, travel information and
scheduling capabilities, public do-
main software that can be down-
loaded and used by members,
computer industry and technical
information, news and sports infor-
mation, and many other items.
As the number of features of-
fered is growing, telecommunica-
tions service prices — usually
figured in terms of cost-per-
minute — are generally coming
down, either directly or indirectly,
through alternate-pricing strate-
gies. And the emergence of faster
data transfer — through both im-
proved software and modem
speeds of 1200, 2400, and even
9600 baud — is changing the nature
of working online.
Fine-Tuning The System
For the newcomer, trying to under-
stand just how an online service
works and what it offers can be an
intimidating experience. It's not
that the systems are so difficult to
use or that there is a scarcity of
information on how to use them.
On the contrary — virtually all of
the systems are regularly covered in
books and magazines, and there are
even free demos offered by some
services. The early intimidation
seems to stem from the same prob-
lem facing people who've never
touched a computer: You really
have to use it a few times before
you understand just how useful,
entertaining, and versatile it is.
At the same time, however, the
various services realize that in order
to appeal to the broadest possible
audience, they must construct sys-
tems that are both simple for begin-
ners and yet flexible for experienced
members. That equation is a diffi-
cult one, and almost all of the ser-
vices are constantly trying to
streamline procedures, simplify the
commands used, and offer just the
right mixture of help screens,
menus, and keyboard shortcuts.
The end result of having a fine-
tuned online structure should ulti-
mately be to have the user able to
achieve something specific rather
than wandering around from menu
to menu or getting lost in a succes-
sion of submenus, says John Gib-
ney, national sales director for
General Videotex Corporation's
Delphi service.
"I see in that a very high-
perceived value for the user that is
what this industry is all about," he
says. "Get them on, get them to the
information they want as fast as
possible, and then if they want to
get off, they can. We don't ever try
to force-feed information that they
have no interest in."
Many telecommunications ser-
vices can be accessed via any of a
number of terminal software pro-
grams. However, in certain cases, as
with systems like QuantumLink that
are dedicated to one computer, sep-
arate software is usually required to
allow the user to include system-
specific features.
The large online services are
also accessed by members through
a local phone call to one of the
major telecomputing carriers, such
as Tymnet, Telenet, and Uninet.
Rather than placing a long distance
call, as you might to contact a re-
mote bulletin board system (BBS),
these local access lines substantially
reduce your online charges.
Bit By Bit By Bit
One of the biggest changes occur-
ring now in telecommunications is
the arrival of relatively low-cost
modems capable of transmitting
data at faster speeds. Many people
who began using a modem at
home, in school, or in a small busi-
ness probably started with 300
baud, or bits per second (bps),
transmission rate. Now, however,
many people are using much faster
speeds.
To understand the differences,
consider that each character (for ex-
ample, a letter or numeral) you
send is normally composed of eight
to ten bits of data, depending on
your computer. If we start with the
assumption that there are ten bits
per character you're sending or re-
ceiving, then 300 bps roughly
equals 30 characters a second. At
that rate, you can actually watch —
and even read — characters as they
appear on your screen. But figures
show that over the past year or so
300 bps has been giving way to
1200, 2400, and even 9600 bps. At
that rate, information is transmitted
much faster, and that can add up to
considerable savings if you're pay-
ing by the minute to access material
on an online service.
"There has been an impressive
leap in 1200-baud usage during
1986 and the first half of 1987,"
says Bill Louden, general manager
of General Electric's GEnie tele-
communications service. "In Janu-
ary 1986, over 60 percent of our
subscribers used 300 baud," he
says. "By the end of 1986, over 90
percent used 1200 baud." Although
2400-baud usage on GEnie is so far
quite limited. Louden says that the
company already has the capability
to handle that speed in more than
70 major metropolitan areas.
Delphi's Gibney goes even fur-
ther: "I think you're going to see
1200 baud disappear rather quick-
ly. Right now, better than 60 per-
cent of Delphi users are coming in
at 1200 baud. About 30 percent are
coming in at 2400 baud, and we're
right now working on speeds high-
er than 2400 baud. We've been beta
testing 9600 baud for some time."
External modems, and inter-
nally-mounted modem cards, have
dropped in price dramatically. A
1200-baud modem that might have
cost several hundred dollars just a
year or so ago sells for about a
hundred now. And these modems
often come with a free membership
to one or more of the major ser-
vices, including a specified amount
of free access time on the system to
get you started.
Most of the services have been
modifying their price structures to
allow 1200-baud usage at or near
the same price per minute as 300
baud. Since online services will col-
lect more revenue for material re-
ceived at 300 baud than at 1200, the
services have in the past tried to
make up for the difference by
charging higher prices for the faster
service. But, as noted, several of the
major systems are now minimizing
the price differences on the theory
that the lower prices and faster
speeds will eventually make online
membership far more popular —
and more profitable.
Ttie Flat-Rate Alternative
For computer users, one of the de-
velopments with dramatic long-
term possibilities is the idea of flat-
rate online computing. In other
words, rather than running up
charges by the minute or hour of
usage — like a taxi meter that's al-
ways on — the company would
charge a flat monthly rate for its
basic services, with an additional
surcharge for premium services.
Most cable television systems work
that way, helping to take the sting
out of the final bill and promoting
wider usage.
QuantumLink has been using
this system since it came into being.
Members pay an initial fee of $9.95
to purchase the system software
and then a monthly fee of $9.95 for
basic services. The system's Plus
Services carry a per-minute cost.
This structure is one that Steve
Case thinks is far more popular
with users and is less inhibiting
since there's no invisible clock tick-
ing away money while the user is
logged onto the system,
"I think it's very important,
and will be increasingly used by
other people," he says. "It allows
you to provide a club of active
members. People tend to want to
keep coming back."
In a related area, GTE Telenet
has been offering its PC Pursuit
flat-fee system now in a growing
number of metropolitan areas. With
PC Pursuit, the computer user pays
a monthly fee of $25 to Telenet and
has access without further charges
to bulletin boards, other computer
users, and noncommercial data-
bases. This does not apply to the
commercial online services,
however.
Although there are literally
hundreds of commercial online ser-
vices, a half-dozen or so have de-
veloped that are used extensively
by computer users in the home, in
schools, and in small businesses.
Without in any way attempting to
cover all of what these services
offer, here's a taste of how each
approaches its market and what
they have added recently.
July 1 937 COMPUTEI 27
American PeopleLink
American Home Network has al-
ways stressed the social aspect of its
online service, American People-
Link. And the primary areas of fo-
cus include machine-specific and
general-interest SIGs, message
boards, a data library, and online
chatting.
PeopleLink users, called P-
Linkers, were recently given access
to several new services, an online
travel agency, and the TWA online
airline reservations service as well
as an online shopping area.
The service offers a variety of
rate structures, including a new fre-
quent-use rate for those who are
most active on PeopleLink. Super-
saver (frequent-use) rates (Mon-
day-Friday, 6 p.m. -8 a.m.;
weekends, 8 a.m. -8 p.m.) are $3.95
per hour for 300 baud, $4.95 per
hour for 1200 baud, and $11.95 per
hour for 2400 baud. Leisure-time
rates (M-F, 8 p.m.-7 a.m.; week-
ends, 8 p.m. -8 a.m.) are $4.95 per
hour for 300 or 1200 baud, and
$ 11 .95 per hour for 2400 baud. And
prime time rates (M-F, 7 a.m. -6
p.m.) are $11.95 per hour for 300
baud, $12.95 per hour for 1200
baud, and $14.95 for 2400 baud.
(Illinois residents pay no prime
time rates.)
The frequent-user rate system
lets you pay a $10 monthly fee that
saves 25 percent on all per-hour
rates. To become a "Frequent P-
Linker," there's a one-time $12.50
signup charge unless you join when
first registering to use PeopleLink.
The service now offers both voice
and modem signup procedures.
American PeopleLink, American
Home Network, 350 N. Clark St..
Chicago, IL 60610
CompuServe
Online since 1979, CompuServe's
main focus over the past year — as
with many of the other services —
has been centered on enhancing ex-
isting features rather than adding
new ones. CompuServe calls itself
the largest commercially available
online information service in the
world, with more than 350,000
subscribers split fairly evenly be-
tween business and consumer use.
Because of that broad base,
electronic mail has always been an
important feature of the system.
CompuServe's own electronic mail,
28 COMPUTEI July 1987
called EasyPlex, has established
ties with several other large com-
munications companies — including
MCI and Telex — allowing two-way
messaging across these systems.
In addition to its many other
services, CompuServe, in associa-
tion with Addison-Wesley's Infor-
mation Services Division, recently
placed online Einstein, a gateway to
some 90 databases selected for their
usefulness to secondary school stu-
dents and faculty. The databases
include newspaper and wire ser-
vices, articles, book reviews, and an
online version of the Reader's Guide
To Periodical Literature.
CompuServe has also been ex-
panding its services for the at-home
financial investor. One new feature,
for example, lets users look at spe-
cific stocks through a detailed
group of 24 analytical filters, in-
cluding market/book ratio, cash
flow, and four-year growth. Further
tracking and analysis functions are
available, and the information can
be downloaded directly into a vari-
ety of software packages, including
Lotus 1-2-3 and Symphony.
There is a $39.95 registration
fee to join CompuServe. Non-
prime time rates are $6 per hour at
300 baud and $12.50 per hour at
1200 or 2400 baud. Prime time ac-
cess is $12.50 per hour at 300 baud
and $15 per hour at 1200 or 2400
baud, CompuServe recently re-
duced its 2400-baud rates to the
same level as that for 1200 baud.
CompuServe, P.O. Box 20212,
Columbus, OH 43220
Delphi
General Videotex's Delphi service
has recently added several en-
hancements to its system, in addi-
tion to the electronic mail,
teleconferencing, bulletin boards,
and other features that have been a
part of its offerings.
First, the company is issuing a
revised and illustrated handbook,
published by Simon & Schuster.
With purchase of the manual, a
new user doesn't have to pay the
service's $24.95 registration fee.
Delphi officials expect to add
the one-hundred-thousandth
member to its service before the
end of the year. Recent additions to
the service include a personalized
astrology service that has proven to
be very popular and new auction
software that allows users to bid on
products. Delphi hosted an online
fund-raising auction for public tele-
vision station WGBH in Boston that
netted the nonprofit PBS station
$25,000.
New "Advantage" rates are
available for as little as nine cents a
minute, or $5.40 per hour. To take
advantage of those rates, a user
simply agrees to use a minimum of
$24 a month in log-on time. The
$24 charge is applied toward your
monthly usage, and there is a one-
time fee of $19 to use the Advan-
tage rate. Prime time standard rates
are $17.40 per hour, while non-
prime time rates are $7.20 per hour.
General Videotex Corporation, 3
Blackstone St., Cambridge, MA 02139
Dow Jones News/Retrievai
Dow Jones emphasizes its news
and information for the business
and financial community. There are
more than 40 business and financial
databases, and selected stories from
the Wall Street Journal, Barron's, and
the Dozu Jones News Service.
You'll find a wealth of data on
all areas of business, such as ex-
cerpts from SEC records, owner-
ship information on more than
10,000 public companies, company
profiles from Standard & Poor's, re-
search reports from brokerage
houses, and 15-minute delayed
stock quotes with a special news
alert feature.
The company recently intro-
duced an enhanced version of the
Dow Jones Tracking 5er\'ice for
automatic tracking and analysis by
members through their own com-
puters. The service lets them auto-
matically retrieve stock prices from
the Dow Jones Current Quotes Ser-
vice and late-breaking news from
the Dow Jones News Service for
each company in the profile.
New stock analysis programs
have also been recently made avail-
able for Macintosh computers, sim-
ilar to those already offered for IBM
PCs and compatibles, and the Ap-
ple Il-family of computers.
The Dow Jones registration fee
is $29.95, with an annual $12 fee
(waived the first year). Non-prime
time access ranges from 10 cents to
80 cents a minute at 300 baud, de-
pending on which services are
used. Prime time access ranges
from 30 cents to $1.20 a minute at
300 baud. The fee for 1200 or 2400
baud is 2.2 times the 300-baud rate.
Doiv Jones News/Retrieval, P.O.
Box 300, Princeton, N] 08543
GEnie
GEnie's round-table SIGs continue
to be one of the most popular areas
on the service. More than 40 of
them are offered, focusing on all
major brands of home computers
and operating systems. GEnie has
also added non-computer-related
SIGs for photography, genealogy,
scuba diving, and a host of other
hobbies and interests.
The service, responding to re-
quests for more online access to
financial information, has begun
offering GEnie Quote$, a stock
market utility that gives infor-
mation on over 67,000 securities.
Users can also put their personal
portfolios online.
The company charges no addi-
tional fee for 1200 baud, and now
offers 2400 baud in over 70 cities.
Prime time access Is $35 an hour,
but non-prime time access is only
$5 an hour. A one-time registration
fee of $18 is also required.
General Electric Information
Services, 401 N. Washington St.,
Rockvilie, MD 20850
PlayNet
PlayNet began operation in Octo-
ber 1984 with a primary audience
of Commodore 64 owners who
wanted to meet others online and
to play games that incorporated
color and sound. The non-prime
time rate is a mere $2.75 per hour,
with a monthly maintenance fee of
$12 required. The registration fee is
$19.95.
PlayNet has recently under-
gone a streamlining of its system,
remodeling the menus, bulletin
boards, and other areas of the ser-
vice. Improvements were made in
the online conversation section,
which continues to be the most
popular area on PlayNet. There are
14 online games incorporating
color and graphics, as well as three
text-only games: bingo, poker, and
blackjack.
The most recent addition to the
service is the online shopping cen-
ter. This shopping area focuses on
small merchants, crafts people, and
artisans, unlike most of the other
services. There is also a new dis-
count shopping area in which noth-
ing is priced higher than $9.99.
PlayNet, 105 Jordan Rd., Troy,
NY 12180
QuantumLink
QuantumLink has become a focal
point for a great deal of Commo-
dore 64 telecommunications activi-
ty during the past year or two.
Commodore itself has provided
marketing and some funding for
the service in trying to build a major
Commodore forum.
The QuantumLink software that
comes with membership means
that the 64's excellent color graph-
ics and sound can be included in all
of the areas of the service. And
QuantumLink follows a busy
schedule with guest speakers and
topical forums — all aimed at help-
ing Commodore 64 users get more
out of their machines.
QuantumLink has expanded
its regular service to include online
forums hosted by such major soft-
ware companies as Electronic Arts,
Timeworks, and other publishers;
Commodore enhancement areas
such as the GEOS forum developed
in conjunction with Berkeley
Softworks; and the recently added
casino area in which you can play
interactive, multiplayer blackjack
and poker, as well as slot machines
and other games of chance.
One of QuantumLink's most
ambitious projects is called Habitat,
a completely interactive world de-
veloped in association with Lucas-
Film. Users first log into Habitat
and then can move throughout the
world with their cartoon character
personas, meeting others and
building an alternate life. After con-
siderable development delays.
Habitat is still not ready for full use.
But QuantumLink officials believe
that, when ail of the problems are
worked out of the complex project,
it will be a breakthrough in online
gaming.
Quantum, the parent compa-
ny, is now experimenting with the
beta version of a similar service for
Apple II owners. Apple owners
who would like to apply to become
beta testers for the planned service
can log in through their modems at
1-800-833-9400. Note, however,
that this service is not yet ready for
full public use.
There's no registration fee to
join QuantumLink other than the
$9.95 software. Users pay $9.95 a
month for unlimited use of basic
service, plus additional per-minute
fees for some extra services they
may want.
QuantumLink, 8620 Westwood
Center Dr., Vienna, VA 22180
The Source
The Source offers a wide variety of
online information to both home
and business users. In the consum-
er area, a games 5IG has been
added to other SIGs on personal
computing, PC software, profes-
sions, and arts and entertainment.
Two of the system's realtime con-
ferencing capabilities, involving
both public and private conferenc-
ing, have also been enhanced.
Several financial services have
been added. The home investor
may want to make use of Risk/
Reward Analysis, a decision-
making support tool that provides
analysis for stocks, bonds, war-
rants, and convertibles. Volahlity
data is drawn automatically from
Standard & Poor's.
A new tax service that's offered
is a compilation of tax information
and a tax question-and-answer ser-
vice. A mutual fund analysis fea-
ture provides performance histories
for more than 800 mutual funds
and 40 different market indices.
The Source has also added
MEDSIG for the discussion of
chronic illnesses; COOKSIG for
communication about cooking, rec-
ipes, and dietary concerns (part of
these revenues go to the American
Cancer Society); and Educators' Ex-
change, a professional exchange for
teachers and administrators to
share information, learn about edu-
cational software, and stay in-
formed on educational issues.
A registration fee of $49.95 is
required to join The Source. A
monthly fee of $10 is also charged,
although this is credited against the
user's online time. Prime time ac-
cess is 36 cents a minute at 300
baud, 43 cents a minute at 1200
baud, and 46 cents a minute at 2400
baud. Non-prime time access is 14
cents a minute for 300 baud, 18
cents a minute for 1200 baud, and
20 cents a minute for 2400 baud.
The Source, 1616 Anderson Rd.,
McLean, VA 22102 ©
July 1987 COMPUTEl 29
Reviews
Ring Quest
Michael B. Williams
Requirements: Apple U-series computer.
It's a beautiful day. You dedde to stroll
along the oceanfront, where you en-
counter a frail old man with a fascinat-
ing story to tell. He speaks of another
land, a land where the Ring of Chaos
and the lost Ring of Order rule supreme.
But there is no order in this land, and
you listen curiously to the old man's
plea for you to find the Ring of Order
and bring peace to this faraway world.
As you nod your head in consent; a
feeling of drowsiness overwhelms you;
and you lapse into an uncontrollable
dream. When you awaken, you find
yourself staring upward at purple skies
decorated with red streaks. You realize
that you are indeed in the land of which
the old man spoke. You stagger to your
feet and, accompanied by a native from
the land, embark on your Ring Quest.
That's the story behind Ring Quest,
a graphics adventure game from Origin
Systems. In this adventure, you are the
main character of the story. You don't
just helplessly observe while the story
unfolds in front of you. You actually
make the decisions that determine the
course of your character's life — or death.
You use simple English sentences
to indicate what you want to do. If you
see something interesting to the north,
you simply type "Go north." If you
need to get to the other side of a river,
just type "Cross the bridge." But Ring
Quest can also accept complex com-
mands, such as "Get the sword, rope,
and ring; then run north."
What's A Manticora
Look Like?
Ring Quest also has lively graphics —
full-color pictures that enrich the scene
with animation. Eyes bulge, claws
clamp, hands grasp, and fire flickers,
even as you ponder your next action.
Although the graphics are very
good. Ring Quest is not just a graphics
adventure. Its text descriptions, though
not as descriptive as Infocom's aU-text
adventures, are vivid and interesting
enough to stand on their own. For those
so inclined, the graphics can easily be
turned off (and just as easily turned on
again — you'll definitely want to see
what a manticora looks like).
An unusual feature of Ring Quest is
its inclusion of arcade sequences as a
part of the adventure. It's rare for a text-
based adventure game to contain any
type of action-oriented challenge. And
since diehard adventurers are likely to
cringe at the thought of having to play
an arcade game, the games can be by-
passed altogether with one simple
command.
The first game. Cliff Climber, re-
quires you to dodge falling boulders,
snakes, and rock slides while scaling
the side of a chasm. In the second game.
Flyer, you try to guide yourself down to
a platform surrounded by a sea of
flames.
zi*^:'%M:^i^:-
^
5:f ^-:; ' .'
Ring Quest for the Apple 11 lias some-
thing for everyone: text and graphics
adventure, animation, arcade action,
and challenging puzzles.
Most of the time, though, you and
your sidekick, Gorn, will try to pick up
clues that will lead you to the Ring of
Order. To win the game, you must first
locate and nulUfy all the sources of an
impenetrable force that prevents your
access to the castle, where the formida-
ble enchantress Lisa holds the Ring of
Chaos.
Along the way, you'll have to deal
with a greedy troll, an unforgiving were-
wolf, a wise old man (whose services do
not come cheap), and a manticora (a
cross between a man, lion, bat, and scor-
pion) who absolutely refuses to let you
cross the bridge over a deep chasm.
Charming Lisa
Those are but the least of your worries.
The holder of the Ring of Chaos, the
beautiful, but evil, enchantress Lisa,
has a nasty habit of appearing out of
nowhere and casting spells that make
life difficult for you. She can instantly
deplete your water supply, suddenly
reverse your internal compass, or tem-
porarily afflict Gorn with the intellect of
a three-year old. But when she really
means business, she'll utter "Tele-
trans!", and you'll suddenly find your-
self randomly transported to some
location usually miles away from where
you were.
Ring Quest comes with a clever
introductory adventure booklet, which
interactively tells the story behind your
quest. At the end of each passage, you
have two or more options. Each leads to
a different passage in the booklet and a
slightly different story line. Origin Sys-
tems also provides a laminated, eras-
able map of the strange world. Some of
the major landmarks are already drawn
on the map; you can easily add others
with the felt pen provided.
Despite the enchantress Lisa's un-
orthodox tactics. Ring Quest is not diffi-
cult to solve. It should make a good
first-time adventure because of its
pleasant, colorful graphics and its
straightforward story line.
This game has something for ev-
eryone; vivid, descriptive prose for
those who like reading, and colorful,
animated graphics for those who don't;
arcade sequences for those who like
action, and engaging puzzles for those
who don't. If you're looking for a little
adventure, or action, you just might
want to make a Ring Quest.
Ring Quest
Origin Systems
340 HaTvey Rd.
Manchester, NH 03103
Distributed by Electronic Arts
1820 Gateway Dr.
San Mateo, CA 94404
$19.95
30 COMWITB July 1987
Hop to it!
Cadpak ""«;;;?->. Super C
check out this
Great Software
Super C
C is one of today's most popular languages.
It's easy to transport C source code from
one computer to another. With Super C you
can develop software or just learn C on your
Commodore. Super C is easy to use and
takes full advantage of this versatile
language. Produces6502 machine code and
is many times faster than BASIC. Includes
full-screen editor (search, replace and block
Design pictures and graphics quickly and
precisely. Unlike other drawing programs,
you can produce exact scaled output on
your printer. Design in the units o( your
drawing problem (feet, miles, meters, etc.)
and send hardcopy to most printers. Uses
either the keyboard, lighlpenor 1351 mouse.
Two separate work screens — transfer
artwork from one screen to the other. Place
text in four sizes anywhere in the
picture — three extra fonts included: Old
English, 3-D and Tech. "Try Again" allows
you to undo mistakes. Draw solid or dashed
lines, circles, ellipses at any angle, rays and
boxes. Design fill patterns, fonts and
objects. Cadpak Is the full-featured design
and graphics package for your computer,
for C-64 $39.95 for C-128 $59.95
BASIC Compiler
Now anyone can speed up their BASIC
programs by 3 to 35 times! Basic-64 and
Basic-1 28 easily convert your programs Into
fast machine language or speedcode (takes
up less space yet protects your programs
from prying eyes) or a mixture of both. You
can even compile programs written with
extentions — Simon's Basic, VICTREE,
BASIC 4.0, VideoBasic and others. When
the compiler finds an error, it just doesn't
stop, but continues to find any other errors
as well. Supports overlays and has many
other options. 128 version works in FAST
mode and allows you to use all 128K of
memory. If your program walks or crawls,
give it the speed to RUN!
for 0-64 $39.95 for 0-128 $59.95
'\..fii!y to u^i packn^i wilh morg pffw^r than
most users should need. ..ultra-fast compile
and link times make program development
effortless." Adam Herat, Transactor
"...everything a good compiler should
be. ..easy to use, ..efficient. ..offers a good
range of optional features. ..excellent
docamentation...ifiexpensive."
Tom Banford, Commodore Magazine
operations), compiler, linker and handbook.
Combine up to seven modules with the
linker. Besides the standard I/O library, a
graphic library (plot points, lines, fill) and a
math library (sin, cos, tan, log, arctan, more)
are included. Whether you want to learn C, or
program in a serious C environment for your
Commodore, Super C is the one to buy.
for C-64 $59.95 for C-128 $59.95
Give your
BASIC programs
a boost!
and SUPER BOOKS!
GEOS
INSIDE
AND OUT
GEOS
TRICKS
GTIPS
w t; O p
Ef ^ ^
n y in c
Anaiomy of tho C-S*
IrskJers guide to '&4 inlamals.
Graphics, sound, I/O. kemal.
memory maps, and much
mors. Comptelei commented
ROM Istings. ^OOpp St3.95
Anatomy of ih9 1541 Dttvt
Besi handbix* on Ihis drrvft,
explains ail. Filled with many
examples programs, ulilities-
Fu ly commented 1541 ROM
listings. ®O0pp %\S9S
Tricka « T^s for tht C-$4
CoSlecticn ol easy-to-use tech-
niques: advanced graphics,
fmproved data input, CP/M.
enhanced BASIC, data fiar^d-
!ing and more. 27Spp 51 9 95
GEOS insldt tfid Out
Detailed info on GEOS. Add
your own applications to
GEOS. Edit icons Constani
display clock. Single -step
through nTemory. $19.95
GEOS Tricks ind Vpa
Golleclion of helpful lech-
niQUBS lor all GEOS user^
Includes font editor, machine
language monrlor, quick
badojp, more. Sl9.d5
>>; raw
go c _
S ™ %
_ (0 O
O o~
M ra
" <uo
S ^ °
iU
~ ^ 'O "D oj O g
CQUMO^QFtF
1];
INTERNALS
"'FF^Sofiwii
g.i. vp. i.n U
1571 INTERNALS
Abitu.\ -^^^^ScifLui;e
CD
Abici;M~-^S
PEEKS & POKES
Abacus
^oriwuB
C-I2e tNTERHALS
Imponant C-12fl inlormation.
Covers graphic chips. MMU,
I/O, 80 column graphics and
futly commented ROM
listings, more. SCOpp S13.95
^lii
BASIC 7.0
INTERNALS
Abacus E
l.<;ofl>'irc
J57I IKTERNALS
Essgniial rererencs. Intsnal
drive fLinclIons. Explains
variojs disk and tilo lormats.
Fully-commonted ROM
Isiings. -ssopp Sie.9s
C-12a THICKS i TIPS
Fascinating and practical info
on the C-128 80-col hires
graphics, bank swilching.
300 pages ol uselul intorm-
aton fof sveryono. 519.95
C-1ZS PEEKS i POKES
Dozens ol programming
quick-hitters, techniques on
the operating systom, slacks,
zero page, pointers and
BASIC. 240FP Si 6.95
O 75^ O
™ 5 </j
m * S
O (uQ
o ^ o
■q- <o
If)
c\j r^ ^ tr>
O X .■O Li- <D
ffl S- a . f-
C--I2e BASIC7.0 Inlimals
Get all the inside info on
BASIC 7,0. This exhaustive
handbook is complete wilh
fully commented BASIC 7.0
ROM listings, S24,95
a -
■D V C
o
|2
Two Views Of Outer Space:
S.D.L And Wanderer
Neil Randall
Reijuirements: S.D.L; Atari ST (reviewed
here), IBM PC, Amiga, Apple IlGS, and
Commodore 64. Wanderer: Atari ST.
S.D.I, and Wanderer place you in the
captain's seat of a space fighter. In
S.D.L, your mission is to defend the
United States against KGB rebel fight-
ers and missiles, all for a chance to
rescue your own true love, the com-
mander of the Soviet space station.
Wanderer presents another rescue mis-
sion, but this one is far more obscure.
Here, you battle your enemies for the
right to bring home your caretaker's cat.
It seems she can't live without it, so
until she gets it back, your apartment
won't get cleaned. (And it's such an
awful mess.)
The plots may be contrived, but
the fact that the games in fact have plots
marks them as something special in the
arcade game field. Since the days of
Space Invaders and Donkey Kong, arcade
games have provided considerable ex-
citement, but few have offered players
an interactive story. S.D.L and Wanderer
go a good way toward filling this gap.
Both are arcade games, and both use
the now-classic cockpit display, but —
unlike most arcade games — you can
complete them.
Dazzling Graphics
Graphically, both games have much to
offer. S.D.L, a new offering in Mind-
scape's Cinemaware line of interactive
fiction, uses some of the best graphics
I've seen in any game. The display
screens range from a control panel
showing several global maps to the in-
terior of the Soviet space station, as well
as a silhouetted embrace with the gor-
geous Soviet commander (your own
true love, remember). The most fre-
quent display, though, is the view from
the cockpit of your fighter. You guide
the fighter around the world, shooting
down rebel KGB fighters, repairing
your S.D.I, satellites, and docking with
your space station for fuel and repairs.
When you shoot down several fighters,
the rebels will declare American ag-
gression and start launching missiles
from Russia. At this point, you dock
with the space station (no mean feat),
race into the Missile Defense screen,
and prepare to knock the Soviet missiles
out of the sky. If you succeed, you do it
all over again, until at last you are in-
formed that the Soviet space station has
been caphared by the KGB rebels. When
that happens, you attempt the rescue.
Wanderer's display also places you
in the cockpit of a fighter, but the simi-
larities pretty well end there. The rea-
son is simple: Wanderer is in 3-D.
Included in the package is a pair of red-
blue 3-D glasses, the kind used for such
classic 3-D movies as The Creature From
the Black Lagoon. When you put them
on, the ST's screen appears three-
dimensional. After a few minutes of
focusing, the stars recede into the back-
ground, and the display seems to
achieve true perspective. When you en-
ter warp drive, and the stars race past
you in a swirling spiral, the effect is
quite spectacular.
Surely one of the most unusual
games I've seen. Wanderer has you
move from planet to planet, offering
the ruler of each planet a playing card
to strengthen that planet's poker hand.
(There's this galactic poker game going
on, in progress now for centuries, and if
you offer a helping card they will re-
spond by paying you in cats. Yes, cats.
If you collect enough cats, or if you
manage to get one specific card, you
can penetrate to the central sector and
try to rescue your caretaker's cat.) It's
all very complicated, but it's also a great
deal of fun.
More fun, in fact, than S.D.L,
which offers superb graphics, but in
actual game play suffers from being too
repetitive. After shooting down KGB
fighter after KGB fighter, repairing
damaged satellites, and intercepting
KGB missiles with your strategic de-
fense weapons, you are asked to turn
around and do the same things over
again. By the time you've hit the third
round, the excitement begins to pale;
once into the fourth, you begin to tire of
it. You begin to wonder, in fact, if your
own true love is really worth the effort.
What makes this strange is that ar-
cade games, by their very nature, are
repetitive. The good old ones, like Aster-
oids and Missile Command, had no con-
clusion, your goal being simply to chalk
up hundreds of thousands of points.
S.D.L, by offering a finish, ironically
loses the appeal of racking up the points.
The impetus behind shooting down
KGB fighters is not acquiring points, but
rather reaching the end of the plot. Wan-
derer, which also has a conclusion, suf-
fers similarly, but Wanderer's conclusion
is more difficult to reach. Its game play is
somewhat more challenging, and get-
ting killed is far easier.
The Atari ST version of S.D.I, from
Mindscape offers outstanding graphics.
But game play itself is extremely
enjoyable. S.D.I.'s graphics are so
splendid that they more than atone for
whatever the game play lacks, and you
vidll find yourself booting up the game
simply to see what your ST can do.
Wanderer, with its workable 3-D dis-
play, is unique, and, like S.D.L, it is an
excellent product with which to show
off your ST to your friends. Played
obsessively to a conclusion, both games
will eventually become worn out, but if
played as I think they are meant to be
played, 30 minutes here and 30 min-
utes there, they will continue to draw
your attention. Were 1 asked to recom-
mend one over the other, I would sug-
gest S.D.L, because graphically it is one
of the best ST products on the market.
But both games are worth a look, and
both point toward an exciting ST future.
S.D.I.
Mindscape, Inc.
3444 Dundee Rd.
Northbrook, IL 60062
$34.95 Commodore 64 version
$39.95 IBM PC version
$49.95 Macintosh, Amiga, ST, lies
versions
Wanderer
EiderSoft USA
P.O. Box 288
Burgettstown, PA 15021
$39.95
32 COMPUTEI July 1987
COMPUTE! Books
introduces a new line of
easy-to-use computer boolcs.
COMPUTEl's Quick and Easy Guides are effective,
dependable reference guides to using applications
on your personal computer. From command sum-
maries and quick-reference charts to tips for
power users, you'll have the information you need
right at your fingertips. Each book is specially de-
signed to be convenient and easy to understand.
COMPUTEl's
QUICK
&EASY
GUIDE TO
USING
MS^OS
^^.^^^
COMPUTEl's
QUICK
&EASY
GUIDE TO
LEARNING
LOTUS 1-2-3
COMPUTEl's Quick and Easy Guide
to Using MS-DOS
Bonnie Derman and Strawberry Software
ISBN O-8?'t55-105-6 $12,95
Whether you're an experienced MS-
DOS user or just starting out, this
book is your easy-to-use reference to
this powerful and flexible operating
system for IBM and compatible com-
puters. No longer will you need to
wade through hundreds of pages to
find just the right DOS command.
COMPUTEl's Quick and Easy Guide
to Using MS-DOS puts the infor-
mation right at your fingertips. With
two indices and an expanded table of
contents, simply look up the task you
vrant to accomplish or the DOS com-
mand you need— and you'll find an
explanation of exactly what to do.
COMPUTEl's QufcK and Easy Buide
to Learaing Lotus 1-2-3
Doug V*ll
ISBN 0-87'155-106-4 J12.95
The perfect guide for the novice user
of the popular and powerful Lotus 1-
2-3, this book assumes no previous
computer experience whatsoever.
COMPUTEl's Quick and Easy Guide
to Learning Lotus 1-2-3 covers
everything from building a spread-
sheet model, setting up a database,
and using 1-2-3 tor word processing,
to creating graphs and powerful mac-
ros. Also inclutJed are discussions on
horw to start 1-2-3 and available add-
on softvrare that can be used with
Lotus 1-2-3.
COMPUTEl's Quick and Easy Guide
to AppleWorks
Tom and Ellen Dougher
ISBN 0-87455-109-9 $10.95
AppleViforks. the unchallenged leader
in personal productivity software on
the Apple II series, is an integrated
package combining a word processor,
database, and spreadsheet, It's a
complete program that lets you do
everything from writing letters and re-
ports to keeping extensive files and
projecting financial earnings. With
COMPUTEl's Quick and Easy Guide
to Appleworks, you'll see how to get
started with AppleVforks. and how to
use each of the three major applica-
tions, A Command Summary, Key-
board Template, and Quick-Reference
Chart provide infomiation in one-stop
locations, f^umerous ideas offer prac-
tical examples on new ways to use
AppleViforks. And there's even all the
latest information on AppleWorks
add-ons and enhancements, Clearty
defined sections apply to novices and
povrer users alike.
CDMPUTEI's Quick and Easy Guide
to dBase III Plus
Chuck Doherly
ISBM 0-87455-107-2 $10.95
For the beginning or experienced user
of this popular database management
program. Ashton-Tate has sold more
than a million copies of dBase, and
COMPUTEl's Quick and Easy Guide
to dBase III Plus is fte guide and ref-
erence to help you tap all the power
and flexibility that dBase III Plus has
to offer. This is not a manual for
dBase, rather, it's a guide that makes
getting started with dBase easy and
finding specific infomiation quick. For
all users of dBase III Plus on the IBM
PC, PC XT. PC AT, or compatible
computer.
COMPUTEl's Quick and Easy Guide
lo WontPsrfect
Pat/icia Farrell
ISBN D-87455-011-4 S10.95
Write, edit, format, and print with
\/\brdPerfect your first day, using this
simple-to-use guide to the most
popular word processor for the IBM
and IBM compatibles. Organized so
that you can immediately begin to
use this impressive software, this
book covers all the basics and many
ot the programs advanced features.
Read what you neeti and then start to
work with WbrdPsrfect. Learn how to
enter, edit, shift, and print text. Use
the more advanced techniques when
you're ready. See how to prepare a
complete report, set text columns,
merge inforniation to create form let-
ters, and create special forms.
COMPUTEl's Quick and Easy Guide
to Oesktop Publisiiing
Dan McNeill
ISBN 0-87455-112-9 S10.95
With a computer, a printer, and the
right software, you can turn out docu-
ments, flyers, brochures, and more —
all of the highest quality available out-
side a professional print shop. This
easy-to-use reference guide explains
the ins and outs of desktop publish-
ing, shows what you can do with the
variety of available software, and
even helps you select your system. If
you're tired of wading through long
and technical manuals, this guide and
tutorial will get you started today with
desktop publishing,
COMPUTEi's Quick and Easy Guide
10 Dow Jones News/Retrlevai
Dcrtald 3. Tnvette
ISBN 0-87455-113-7 $10.95
Learn how to more efficiently use the
Dow Jones Information Service, a
powerful business and stock infor-
mation database. Access up-to-date
stock quotations, financial infor-
mation, company background data,
and more— all with Dow Jones,
Using a personal computer, a mo-
dem, the phone, and the right soft-
vrare, you can search through back
issues of publications like the Wl
Street Journal or directly place or-
ders. This simplified guide to the pre-
eminent business information service
puts everything within easy reach,
and gets you started faster and more
easily than any manual.
Look for COMPUTEl's Quick and Easy Guides at your local book or computer store.
To order any COIVIPUTE! book, call toll free 1-800-346-6767 (in NY call 212-887-8525)
or write COMPUTE! Books, Customer Service, G.P.O. Lockbox 5044, New York, NY 10087-5044.
COMPUTE! PublicationsJncS
Part ot ABC Consumer r\/iaoazines. Inc.
One of ths ABC PubSsriing Componies
COrvlPUTEl books ore available outside the United States from subsldiorias of
lulcGraw-mil Infemotionol Book Company.
Moonmist
Neil RandaU
Requirements: IBM-PC or compatible,
Apple 11 series, Macintosh, Amiga, ST,
Commodore. 64, 128, or Atari XL/XE
computer.
By now it's probably safe to say that
most computer owners have seen or
played an fnfocom text adventure. Zork
1, U, and 111, The Hitchhiker's Guide to
the Galaxy, Infidel, Enchanter, Wish-
bringer, and Witness have all spent time
on best-seller lists, and high-circulation
magazines like Newsweek have printed
articles about the company. Infocom
has become famous for its interactive
fiction, and its customers look to it not
for new kinds of products but for varia-
tions to the old.
As pioneers of the sophisticated
text adventure, Infocom is expected to
set the standard for future text adven-
tures. To this end, Infocom has intro-
duced [nteractive Fiction Plus, a line of
text adventures designed especially to
take advantage of machines with 128K
of memory (though they're also avail-
able for 48K and 64K machines). The
differences are certainly not dramatic,
and in many ways the games look the
same as they always have, but Info-
com's newest adventures are different
from the old in several important ways.
Moonmist demonstrates the differ-
ences. Like all Infocom games of the
past two years, it is superbly packaged,
but unlike the earlier games, the pack-
aging is needed to play the game, Info-
com does not copy-protect its disks
(and has certainly suffered its share of
software piracy), so this reliance on the
packaging is perfectly justified. Inside
Moonmist's package are two letters from
your acquaintance, Tamara, the latter of
which suggests a murder plot against
her. Also included is a brochure about
Tresyllian Castle in Cornwall, where
Tamara is staying, which provides
many descriptions necessary to play the
game. The documentation introduces
the "Legendary Ghosts of Cornwall,"
and a Moonmist iron-on transfer is in-
eluded for those who still own T-shirts
with no writing on them.
In The Castle
Your task is to uncover the murder plot,
in the meantime dealing with some
very interesting characters inside a
well-described medieval castle com-
plete with torture devices and a wan-
dering ghost. You must collect clues,
talk with the characters, survive an en-
counter with the ghost, and even figure
out what outfit to wear at certain times.
Moonmist is an introductory-level ad-
venture, so it moves along quickly and
is not overly difficult; but the sheer
number of things you have to do make
it a long, challenging game.
The differences between Moonmist
and earlier Infocom games are subtle.
The parser — the part of the pirogram
that interprets your typed commands —
continues to grow more sophisticated,
and more specialized. Room descrip-
tions are more precise, more detailed,
and more helpful, all of which gives
you a stronger sense of your physical
location. At each stage, too, there ap-
pears to be a greater choice of actions
available, with fewer actions being bla-
tantly wrong. And the characters in the
story are, for the most part, genuinely
interesting, even if they don't do as
much as perhaps they should.
The must subtle change, though,
and the most important, is in the role
taken by the reader. In Moonmist, as in
most of the newer Infocom games, you
feel that a story is actually taking place,
and that you are a part of it. In the
earlier adventures, your acdons forced
the story from one point to the next, but
unless you did something, nothing hap-
pened. While this is technically true of
Moonmist, the authors, Stu Galley and
Jim Lawrence, manage to make you feel
that you are caught up in a storj' beyond
your own actions. The time limit helps,
of course, but somehow the castle seems
far more "alive" than the caverns in Zork
or even the spaceship in Starcross. The
people in the castle all know more about
it than you do, and the result is that you
feel like an intruder. This effect is a good
one.
For those who have not yet tried an
Infocom adventure, Moonmist is a good
introduction. It is challenging without
being frustrating, and it offers what in-
teractive fiction is supposed to offer; a
chance to participate in an interesting
story. For Infocom veterans, Moonmist
demonstrates how text adventures have
changed since the heyday of Zork.
Moonmist
Infocom
125 Cambridge Park Dr.
Cambridge, MA 02140
$39.95 IBM-PC and compatibles, Apple
II, Macintosh, Amiga, and Atari ST
versions
$34.95 Commodore 64, 128, and Atari
XE/XL versions
Partner
Kathy Yakal
Requirements: Commodore 64 (reviewed
here), 128, or IBM-PC or compatible (256K
recommended but not required on MS-
DOS machines).
Throw away your card file. Toss out
that old calculator you bought in 1975
when the price came down to $5.95.
Stop trying to decide which size paper
you're going to write a memo on, and
end the frustration of having to line up
each mailing label when you're typing
a bunch of them.
You can replace alt these things
with a single cartridge that does them
all, and more: Partner, from Timeworks.
Partner is one example of a genre of
productivity software that offers several
desktop accessories like a notepad, ap-
pointment calendar, calculator, and
address/phone file in an invisible pro-
gram that runs concurrently with other
programs; that is, it remains in memory
while you're using your word processor
or sweating out eels in a spreadsheet or
landing in San Francisco in Flight Simu-
lator, and it pops up ready for use at the
touch of a cartridge button.
Installing Partner, depending on
which version you're using, involves
little more than plugging it into an ex-
pansion port. Although you may not
need to use all of its functions immedi-
ately, it's a good idea to run through the
manual to make sure you know how to
use all of them, saving time later.
Partner offers nine functions:
Appointment Calendar: Partner
contains graphic calendar displays for
every month from January 1987
through December 2099; by pressing a
few function keys, you can enter, edit,
and save information for any day in
three areas — Key Tasks, a To Do list, and
Appointments. Though the first two
headings might seem to duplicate each
other, they actually point out a very
important time-management tool; sep-
arating goals from objectives. In the
midst of doing all of the little tasks that
make up your day, it's wise to keep the
larger picture in mind.
If there are tasks you haven't com-
pleted when 5:00 rolls around. Partner
lets you transfer them to the next day.
The snafu here is that it is erases any
items you've already entered for that
next day. Another minor gripe in this
area: When you're printing out a week
or month's worth of days, the skeleton
format (including headings and num-
bers) is printed for every day, whether
or not you've entered anything there,
wasting space and printer paper.
34 COMPUTEI July 1967
Memo Pad: Using simple text-
editing commands, you can dash off
memos without losing your current
program. The Typewriter feature here
will print out one line at a time as you
hit the return key if you like; you can
also print out the whole thing when it's
done.
Address List: Using the same text-
editing features from Memo Pad, this
section is an electronic card file for stor-
ing, alphabetizing, displaying, and
printing names, addresses, and tele-
phone numbers. You can also print
mailing labels within this section. This
may involve playing around with the
margin settings to zero in on the right
spacing.
Phone List: This is an abbreviated
version of the Address List. Since it
contains autodialing capabilities, it's
especially helpful for telecommunica-
tions applications. You can store phone
numbers for often-called online ser-
vices and let the program dial for you.
Calculator: When the boss drops a
paycheck on your desk, you can break
into this area and do a quick calculation
of your checkbook balance. The pro-
gram displays a graphic representation
of a calculator with its standard func-
tions, and includes a printout option.
Print Screen: Lets you print one
screen from the program you're run-
ning, with the exception of graphics
displays.
SwiftDOS; This section offers ac-
cess to a variety of housekeeping com-
mands for your disk operating system,
like formatting, cleaning, and erasing.
SwiftLock; Data protection
schemes like this insure that no one can
peek at your work when you walk
away from your desk to get coffee, En-
ter this section before leaving your ter-
minal, and it freezes all active data until
you enter your secret code.
Setup: Though it's listed last, this
is probably the first area you'll want to
dive into. It asks eight questions about
your hardware configuration, letting
you set addresses and margin spacing.
Partner also offers Swiftload, a
fast-loading feature.
Partner is an excellent addition to
any software library. It offers an un-
complicated command structure and
clear, simple documentation. It pro-
vides quick, easy access to features
often used during the business day; any
of the program's functions is only a
keypress away, and a display of the
purpose of each function key runs
along the bottom of the screen in each
section. And Partner doesn't take up
space with a lot of extras that often
aren't necessary.
But the main advantage here lies in
the fact that it runs concurrently with
whatever software you're using: no
need to save a document, power down,
reboot, and so on. It's not meant to be
used as a full word processor or data-
base manager. It's an accessory — a part-
ner, as its name states — and a good one.
Partner
Timeworks
444 Lake Lake Cook Rd.
Deerfield, IL 60015
$59.95 Commodore 64 and IBM-PC/
PC-compatible versions
$69.95 Commodore 128 version
Realm Of
Impossibility
Michael B. Williams
Requirements: Commodore 64, Apple U
series, or Atari S-bit computer.
Realm of Impossibility is a decidedly
classic, run-as-fast-as-you-can, three-
dimensional arcade game with a goal:
Enter the network of 13 dungeons and
retrieve the seven crowns hidden with-
in them. That would be a cinch were it
not for the team of zombies, orbs, and
spiders whose goal it is to prevent you
from completing yours.
About the only things going for
you in this Realm are your faster speed,
the ability to fend off the creatures by
throwing holy crosses in their path, and
scrolls that give you spells to temporar-
ily freeze or confuse your adversaries,
or to protect you from them.
Otherwise, life is definitely not fair
to you here. You can't kill the creatures
of the Realm, although they can kill
you. You only have one life to live, and
each brush with a zombie, orb, or spi-
der will cost you more of the precious
hit points you need to stay alive.
Fortunately, you can enter the
dungeons in any order, so you can
build up hit points by tackling the easi-
er dungeons first. Some of the dun-
geons are locked; these will need keys
that are located in the other dungeons.
In all, there are 129 different rooms to
explore. Chances are you'll get to see all
of them, since the prize in each dun-
geon is almost always at the end.
Realm of Impossibility has a three-
dimensional effect (like the three-
quarters perspective in Zaxxon) that is a
pleasure to behold. You move up,
down, and around three-dimensional
structures that look more like a futuris-
tic cityscape than an ancient dungeon.
Unfortunately, what looks good is not
necessarily what plays well, as kamikaze
Zaxxon players will attest.
A Little Help From A Friend
What distinguishes Realm of Impossibility
from the run-of-the-mill chase game is
not the three dimensions, but one ele-
ment: cooperation. In the typical arcade
game, you are one person doing a job
that would normally require an entire
army to accomplish. At about the 1000th
level, you start wishing you were an
army — or at least that you had someone
to help you play the game.
With Realm of Impossibility, you stLU
won't have an army, but you can have a
friend help you through each dungeon.
Having two players on the field at once
gives the zombies and his friends two
targets instead of one, but it also gives
you a chance to divert the menaces while
your buddy safely snatches the key (or,
preferably, you swipe the key while he
acts as zombie bait).
An additional advantage of the
two-player game is the ability to resur-
rect your partner whenever the little
buggers finish him off. Of course,
you've got to get over to him before
they knock you off. In the one- player
mode, once you're finished, so is the
game.
When you play Realm (which, ac-
cording to the developer. Origin Sys-
tems, can run in the Apple llGS's
emulation mode), you must use a joy-
stick; a second player may use either
the keyboard or a second joystick.
Learning to navigate the 3-D rooms is a
bit tricky no matter which you use.
Until you become proficient at it, don't
worry too much about running into
walls — it's the zombies, spiders, and
orbs you need to avoid.
You'll enjoy the four difficulty lev-
els (from easy to severe), the online
instructions (no more lost manuals),
and the cute touches (the player waves
"Hello!" at the entrance to each dun-
geon), but the game's musical score will
cause you to reach for the sound toggle
after a bar or two. A single keypress will
cut off the sound (or turn it back on).
By far the best thing about Realm of
Impossibility is its two-player mode.
Forget its wonderful three-dimensional
color graphics. The ability to work to-
gether with a friend, instead of compet-
ing against one, makes this a game even
an arcade-game hater could love.
Realm of Impossibility
Origin Systems
340 Harvey Rd.
Manchester, NH 03103
Distributed by Electronic Arts
1320 Gateway Dr.
San Mateo, CA 94404
$14.95
July 1987 COMPUTE! 35
Weather Wizard
This weather forecasting program is
written entirely in BASIC and can be
adapted to run on virtually any com-
puter with BASIC. The original ver-
sion is written for the IBM PC/PCjr.
We have added translatiotjs for the
Commodore 64, Amiga, Atari ST, Ap-
ple n, and Atari 400, 800, XL, and XE.
"Weather Wizard" is a simple, easi-
ly modified BASIC program for
forecasting the weather. Because
every version is similar, we've pub-
lished one main program and pro-
vided line changes and modifi-
cations for each individual machine.
Begin by typing in the main pro-
gram (Program 1). When that's
done, add or modify the lines listed
for your specific computer. After
you have typed the complete pro-
gram for your computer, save a copy
to tape or disk before you run it.
Atari ST users should note that
several lines must be deleted from
the main program to produce a
proper display. See the REM state-
ment in line 1 of Program 6 for
details. Amiga users should re-
member that Amiga BASIC does
not automatically arrange num-
bered program lines in numerical
order. Be careful to type the lines of
the main program in the order
shown. The extra line in Program 7
must be added as the first line of the
program.
Entering Data
Weather Wizard is largely self-
prompting, so you will not need
John R. Wetsch
extensive instructions to use it. The
program begins by asking you to
enter several items of information
about current weather conditions,
beginning with the current month,
day, and year. Enter a number from
1 to 12 for the month, a number
from 1 to 31 for the day, and so on.
The program then displays in-
structions for entering the next item
of information, the wind direction.
This is done by typing a number
according to the categories shown
on the screen.
Next, you must enter the cur-
rent barometric pressure, expressed
in inches of mercury. This will be a
number in the range 27-33.
After the barometric pressure,
you must enter the barometric ac-
tivity {whether the barometer is
steady, rising fast, and so forth).
Again, the computer displays a
menu indicating which number to
type.
The next item of information is
the prevailing cloud type. As
prompted by the computer, enter a
1 for cirrus clouds, a 2 for cumulus,
and so on. If you are not familiar
with the various cloud types, refer
to the brief explanations at the end
of this article.
Finally, enter the current hu-
midity and temperature when
prompted. When you are finished
entering data, the computer prints a
complete forecast for a 6- to 36-
hour period. The period of the fore-
cast depends on what sort of
weather is expected. To calculate
another forecast, answer Y at the
final prompt.
Cloud Types
Cumulus clouds are puffy, white,
and cottonlike in appearance with a
clearly defined outline. Perhaps the
most familiar cloud type, these are
usually found at lower altitudes,
with cloud tops seldom exceeding
5,000 feet.
Altocumulus clouds are small,
semitransparent, cumulus-type
cloudlets that appear in layers. This
type of cloud evolves from the lift-
ing of lower clouds. They often ap-
pear connected, and you can see the
sky through them. Rounded and
regularly arranged, they are usually
found at an altitude of 10,000-
17,000 feet.
When a cumulus cloud devel-
ops both extreme height and mass,
it evolves into a cumulonimbus
cloud. Although it makes up the
most beautiful cloud mass, sweep-
ing up into a towering column,
these are the most dangerous
clouds. Capable of producing
heavy rain, hail, lightning, and
strong, gusty winds, these clouds
occasionally mask a tornado. These
clouds may be easily identified by
their massive appearance, vertical
development (often in excess of
20,000 feet), anvil-shaped top, and
thunder and lightning. Occasional-
ly the tops of extremely powerful
cumulonimbus clouds will exceed
30,000 feet.
Stratus clouds are gray, fea-
tureless sheets, sometimes layered
in appearance. This type of cloud
produces only light precipitation, if
any, and may reveal the sun
through its thinnest parts. When in
36 COMPUTEI Julv 1987
contact with the earth (at an alti-
tude of 50 feet or less) this cloud
type is called fog. The tops of stratus
clouds rarely exceed 10,000 feet,
although one variety, nimbostratus,
may have cloud tops reaching to
15,000 feet.
The word nimbus is a Latin
word which means violent rain or
black rain cloud. Nimbostratus
clouds produce continous precipita-
tion. This cloud type is often gray
and is always thick enough to ob-
scure the sun. Nimbostratus clouds
are usually found near weather
fronts, and although classified as a
middle-altitude cloud, with tops
ranging to 15,000 feet, the cloud
base may be quite low,
Altostratus clouds are a
smooth, uniform, gray sheet of
cloud cover, and consist mostly of
ice crystals, although the lowest
portion may be water droplets. The
sun may appear as though seen
through ground glass, and objects
on the ground will not cast a shad-
ow. Any precipitation associated
with this cloud type is continous.
Altostratus clouds are considered
middle-level clouds, and generally
occur between 6,500 and 23,000
feet in altitude.
Cirrostratus clouds are thin,
white clouds that appear in sheets.
The sun and moon are hardly ever
obscured by these clouds which
often indicate severe weather to
come. They are typically found
high in the atmosphere, usually
above 25,000 feet.
Cirrus clouds are wispy and
white, generally occurring between
16,500 feet and 45,000 feet. A
buildup of cirrus clouds may indi-
cate an approaching warm front.
Before entering this program, carefully read
the typing instructions in the article.
Program 1 : Weather Wizard-
Main Program
Far instructions on entering these programs,
please refer to "COMPUTEI's Guide to Typing
In Programs" efsewhere in this isiue.
10 REM Copyright 19B7 COMPUTE*
Publications, Inc. All righ
t> raHrvad
20 QQSUB 1S20
30 PRINT "Th« Uaathar Wizard"
40 PRINT
50 PRINT "Copyright 1987 CDMPUT
E! Publl cation*" !PRINT"A11 R
Ights R«marv>d
i0 FOR J-1 TO 30001 NEXT J
70 BOSUB 1520
80 PRINT "Ent»r month (us* numb
•r)"r iMIN-l«MflX-12!30SUB 139
0iM - E
90 PRINT "Ent«r Day"| iKIN-liHAX
>31iQOSUB 13901 D - E
100 PRINT "Ent«r th» Y«ar"tiMIN
-0aMAX-2100iQO8UB 13901 Y -
E
110 BOSUB 1520
120 PRINT "Plaama input numbers
Hhsn promptsd by 7"
130 PRINT
140 PRINT " From th» m«rtu sntsr
ths numbar corras-"
1S0 PRINT "ponding to tha Mind
dlraction
1&0 PRINT
170 PRINT "N- North, 3- South,
E- East, W- Mast"
180 PRINT "(Notas Tha dlraction
s ara whara tha"
190 PRINT "wind comas from, not
Hhara It Is going."
200 PRINT "So, 'NE' niaans a Hin
d blOHlng out of"
210 PRINT "tha northaast.)"
220 PRINT
230 PRINT " WIND DIREC
TION MENU "
240 PRINT
230 PRINT "1. N"SPC<4)"2. NE"SP
C(3)"3. E"
260 PRINT
270 PRINT "4. SE"3PC<3)"5. S"SP
C(4>"i. SW"
280 PRINT
290 PRINT "7. W"SPC(4)"B. NW"3P
Ct3)"9. NO WIND"
300 PRINT
310 PRINT
320 MIN-liMAX-9!eOSUB 1390: M -
E
330 BOSUB 1S20
340 PRINT "Entar baromatrlc pra
ssura"! PRINT"! n inchas of H
g tax. 29.95) "|
350 MIN-27lMAX-33iQDSUB 1480JBP
- E
360 B03UB 1520
370 PRINT "Plaasa antar tha num
bar that dascrlbas"
380 PRINT "currant baromatrlc a
ctlvlty. "
390 PRINT "Baromatar Isi 1. sta
ady"
400 PRINT SPC{14)"2. rising faa
t"
410 PRINT SPC(14)"3. slowly ris
ing"
420 PRINT SPCa4)"4. falling fa
»t"
430 PRINT SPC(14)"5. slowly fal
ling"
440 PRINT
450 niN-l:MAX-SiGOSUB 13901 BD -
E
460 QOaUB 1520
470 PRINT "Plaasa antar tha num
bar far tha main"
480 PRINT "cloud typa for your
location. "
490 PRINT
500 PRINT "1. Cirrus" rPRINT"2.
Cumulonimbus" sPRINT"3. Stra
tus"
S10 PRINT "4. Nimbostratus" I PHI
NT"5. Altostratus":PRINT"6.
Altocumulus"
520 PRINT "7. Cirrostratus" I PRI
NT"B. Cumulus" I PRINT"9. No
clouds": PRINT
530 MIN'>liMAX-9tG0SUB 13901 C -
E
540 QOaUB 1520
550 PRINT "Input Huntidlty'iPRIN
T"(a>(. input 30 for 50X hum
idlty>"t
560 MIN-0:nAX-100:OO8UB 14B0:H
- E
570 SOSUB 1520
5B0 PRINT "Input Tamparatura in
Fahranhait": PRINT" (ax. 63
" 63 d ag . F ) " ;
590 MIN— 130IMAX-130S8OSUB 1480
sT - E
600 BOSUB 1520
610 REM FORECASTS
620 IF BP > 29.9 THEN 710
630 IF <W>-1 AND W<-S) AND BD-4
AND BP>29.7 THEN 860
640 IF (W>-6 AND M<-8) AND <BD>
-1 AND BD<-3) AND T>75 AND
H>6a THEN 910
650 IF (W>-6 AND W<-S) AND (BD=
2 OR BD-3) THEN 930
660 IF BP > 29.7 THEN B10
670 IF <BD-2 OR BD~3) THEN 1040
6B0 IF CW>"1 AND W<-5) AND BD-4
THEN 1110
690 IF (W-2 OR W-3) AND BD-5 TH
EN 1120
700 SOTO 810
710 IF (W>-6 AND W<-8) AND (BD-
1 OR BD-3) AND T>75 AND H>7
0 THEN 950
720 IF (W>-6 AND W<-B) AND (BD-
1 OR BD-3) THEN 970
730 IF W-4 AND BD-5 THEN 1000
740 IF W-4 AND DP>30.5 AND (BD-
4 OR BD-5) THEN 1020
750 IF «W4 OR W-5) AND BD-4 TH
EN 1060
760 IF (W-4 OR W"5) AND BD-5 TH
EN 10B0
770 IF (W-3 OR W-4) AND BD-4 TH
EN 1090
7B0 IF W-5 AND (SD-4 OR BD-5) T
HEN 860
790 IF (H-1 OR W-2) AND BD-4 TH
EN 1140
800 IF (W-1 OR W-2) AND SD-5 TH
EN 1160
B10 ON C GOTO 1180, 1210, 1260,
1280, 1300, 820, 1310, B40
, 840
B20 IF T>75 AND H>6B THEN 950
830 80T0 1310
840 IF T>75 AND H>6a THEN 1330
eS0 SOTO 1340
860 PRINT " FORECAST 1 STRONG WIN
DS and HEAVY"
870 PRINT "PRECIPITATION CAN BE
EXPECTED within"
880 PRINT "tha naxt 6-24 hours.
Lowar tampara-"
B90 PRINT "turas ara also forac
ast."
900 BOTO 1530
910 PRINT "C SMALL CHANCE OF THU
NDERSTORMS TODAY]"
920 PRINT
930 PRINT "FORECASTS FAIR waath
mr can ba axpactad"
940 PRINT "for tha naxt 24 to 3
6 hours" I GOTO 1530
950 PRINT "ESLIBHT CHANCE OF TH
UNDER3T0RMS TODAY] "
960 PRINT
970 PRINT "FORECAST! Continuad
FAIR waathar for"
980 PRINT "tha naxt 24 hours.
Tampcraturas will"
990 PRINT "ramain naarly const*
nt, "sBOTO 1530
1000 PRINT "FORECAaTi PRECIPITA
TION can ba sHpactad"
1010 PRINT "In 24 - 4B hr«."iQO
TO 1530
1020 PRINT "FORECASTi WARMER t»
July 1987 COMPUTEI 37
M'nniaus ISutiiftiiil tintnd
NLQ 180
Hi-Speed Printer Sale
1 60 - 1 80 CPS • Near Letter Quality •
Lifetime Warranty
Sale $ 1 99<><>
^ ^Br J^ List $4<
Below
Wholesale
Cost Prices!
List $499.95
OFF LIST PRICE
NLQ-180 Premium Qualify Printer
Near Letter Quality Selectable From Front
Panel Controls • High Speed Dot Matrix*
Letter Quality Modes • 8K Buffer frees up
computer 4-times faster • Pica, Elite,
Italics, Condensed • Super Graphics •
Business or Personal • Tractor/Friction •
15 Day Free Trial • Lifetime Warranty on
Print Head* • 6 Month Immediate
Replacement Policy •
NLQ- 180 Prim Samples
Lifetime Warranty*
Fantastic Graphics
Fantastic Price
APPLE — ATARI — EPSON NLQI 80 SPICIFICATIONS ibm — commodore — etc.
Th is is
an exa^p
le of ITALICS
En \-i si
nczied
Boldface
Condensed Text
Double-stri ke
example
of Near
Letter Quality
Print Buffer
8K bytes utility buffer
Printing Direction
Text Mode — Bi-directional
Graphic Mode — Uni-directional
Interface
Centronics Parallel Port
Paper
Plain paper, Roll paper, Single sheet
Fanfold, Multipart paper: max. 3 sheets
{original plus 2 copies)
Character Fonts
Pica, Elite, Italics, Condensed
Printing Method
Impact dot matrix
Printing Speed
160-180 CPS at standard character printing
Printing Characters
Standard 9x9 dot matrix
NLQ 12 X 18 dot matrix (33cps)
Character size: 2. 12 x 2.8 mm (standard)
Character sets: Full ASCII character set (96)
32 International characters
INTIRFACIS
Ink Ribbon Cartridge
Ribbon Life: 3 million characters/cartridge
Physical Dimensions
Size: I5"xl2"x5"
Weight: 12.7 lbs.
Maximum Number of Characters
Standard: lOcpi 80 cpl
Standard enlarged: S cpi 40 cpl
Elite: 12 cpi 96 cpl
Elite enlarged: 6 cpi 48 cpl
Condensed: 17 cpi 132 cpl
Condensed enlarged: 8.5 cpi 66 cpl
Condensed elite: 20 cpi 160 cpl
Atari $39.95 Apple ii $44.95 Commodore $29.95 IBM $24.95 Laser 128 $19.95 Moclntosh $49.95
Shipping, HandllnB & insuroncs ChargBS
Add S10 00 lor shipping hondling. ond insurance. Illinois rstidsnls pisose add
6V,*/. solas lox. Add S20.00 for ALASKA, CANADA. HAWAII, PUERTO RICO &
APOFPO ordori. All ordorj must be in U.S. Dollors. WE DO NOT EXPORT TO
OTHEK COUNTRIES EXCEPT CANADA S PUERTO RICO. EnclosB coshior chock.
money order or personal check. Allow U days for delivery. 2 to 7 days for phone
orders. 1 doy express moil. Prices * Avoilobility subject lo change without notice.
VISA ~ MASTtR CABD — C.O.D. Call For CO. D, Charges.
To Order Call
COMPUTER
DIRECT
A Division of PROTECTO
(312) 382-5050
For Apple • IBM etc.
(312) 382-5244
For Atari • Commodore
We Love Our Customers
1 0 MHz Super Turbo IBM® XT
^Compatible Computer System
Run thousands of IBM® software programs available.
ree Trial • 90 Day Replatemcnl Policy
Double 90 Day Policy On Compuler
Look of all you gel for only ^599<~
This computer system is sold as a complete unit, NO SUBSTITUTIONS are allowed.
The complete system List Price Sale Price
10 MHz Super Turbo XT Computer
* 512K Memory
* Single floppy disk drive
* Parallel printer port
* Serial printer port
* Mouse/joystick port
* RGB color graphics port
* Hercules compatible monochrome port
MS DOS 3.2 & GW Basic
12" Hi-Res 35 MHz Green Screen Monitor
(TTL & EGA compatible)
Monitor interface cable
Rig Blue Printer
RS 232 IBM to Big Blue cable
2 rolls of heat transfer pap)er
Word First • Word Processor
Data First • Data Base
Calc First • Spreadsheet
»1295°°
•499*"
»99"
No extra cost
*129"
No extra cost
»59'*
No extra cost
*59"
No extra cost
»59"
No extra cost
»99»s
No extra cost
»79"
No extra cost
i 1 9900
•9^00
»249">''
•9900
»24'«
•19"
$-19900
•39»»
M9"
•9«s
*19"
•5"
S9900
•39'*
S9900
*39'»
$9900
•39"
Home & Business
This IBM® XT compatible is perfect
for your home and/or business uses. It
makes life easier in more ways than
you can imagine. Use the system for
personal letters, form letters, address
storage, listing valuables, figuring
finances, school reports, business
reports, calculations, business
projections., .the list can go on and on.
With the addition of some of the
thousands of software programs
available for IBM® you can increase
the capabilities of your system even
further. A terrific home improvement,
business enhancer, entertainment
center & educationed aid!
Save over
$07 COO
Total price when bought separately
'2893"
►892*
off
sale prices!
Complete System only *599
* Buili-in iht Super Turbo XT
IBM® is the trodemofk of International Business Machines Inc.
Extra Disk Drive S99.95
Shipping. Handling & Inaurancs Chargo* and Information
Add $35.00 for sftipping, ftondling and insurance, HIinois residents pleose add
4V, •/. sales igx. Add SfO.OO (or CANADA. PUERTO RICO. HAWAII, ALASKA ond
APOFPO, All orders must be In U,S, dollars, WE DO NOT EXPORT TO OTHER
COUNTRIES EXCEPT CANADA & PUERTO RICO. Enclose Coihier Cfieck, Money
Order or Personal Check, Allow 14 days for delivery, 3 to 7 days for phone orders, 1
doy express mail. Prices S Availability subject to chonge without notice.
VIS* MASTttORO - C.O.D. PiMsecall for C.O,D. charges.
To Order Call (312) 382-5050
COMPUTER f^Li^^lfli^'^^^i.^;,
DIRECT <^^^> 382-5244
^■■*^^ ■ For Atari • Commodore
A Division of PROTECTO We Love Our Custamers
np>ratur«B for th«"
103B PRINT "n«Kt 24 haurm. "iQOT
G 1530
lOAB PRINT " FORECAST 1 CI Bar H>a
thmr shaad with"
1050 PRINT "caDl>r tamparaturBB
. "iQOTO 1330
1060 PRINT "FORECABTi HISH WIND
3 and PRECIPITATION"
1070 PRINT "Hlthln 12 hour*. "iB
OTO 1530
10B0 PRINT "FORECAST! PRECIPITA
TION within 24 hourB."«QOT
0 1530
1090 PRINT "FORECAST I HI0H MIND
3 and PRECIPITATION"
1100 PRINT "within 24 hourm. ";S
OTO 1530
1110 PRINT "FORECABTi SEVERE W»
athar: •tor my with": PRINT"
high wlnda.":SOTO 1530
1120 PRINT "FORECAST! Continuin
g pracipl tation can"
1130 PRINT "ba axpactBd for th«
n»xt 12 to 24 hourm, "8 SOT
O 1530
1140 PRINT "FORECAST! STORMS Hi
th HIGH WINDS Within"
1150 PRINT "24 hourB. CoolBr t
•mparaturaa as wall."iDOTO
1530
1160 PRINT "FORECAST! Pracipita
tlon within 24-36"
1170 PRINT "hour», Bllghtly cod
lar tamparaturas. " :QOTO 15
30
1180 PRINT "FORECAST! If cirruB
cIoudB ara"
1190 PRINT "increaBing and bacD
ming mora dominant"
1200 PRINT "wa can ax pact war ma
r waathar . " I BOTO IS30
1210 PRINT "FORECAST! 50-B0X ch
•nca of pracl-"
1220 PRINT "pltatlon within tha
naxt 24-34 houra. "
1230 PRINT "Chanca of praclpita
tlon will incraaaa"
1240 PRINT "with tha accumulatl
on of mora cumulo-"
1250 PRINT "nimbus typa clouds.
"I BOTO 1530
1260 PRINT "FORECASTS 10-20X ch
anca of "rilF T>35 THEN PR
INT"BhowarB"t60TD 1530
1270 PRINT "anow f lurriaa'-iOOTO
1S30
1280 PRINT "FORECAST! 90X chanc
• of HEAVY pracipi-"
1290 PRINT "tatlon Hlthin 12-24
hours."! BOTO 1330
1300 PRINT "FORECABTi Ch«nc» of
light pracipltation"sBOTO
1530
1310 PRINT "FORECASTi PRECIPITA
TION with HEAVY"
1320 PRINT "winds in 24-4B hour
s." I BOTO 1530
1330 PRINT "tPOSSIBILITY OF THU
NDERSTORMS TODAY]"
1340 PRINT "FORECASTi FAIR waat
har today with light"
13S0 PRINT "to modarata winds,"
I SOTO 1530
1360 REM Intagar input routina
1370 PRINT "antar an intagar ba
twaan"!MIN|" and";«AX
13B0 PRINT ", try again"
1390 INPUT E«iE - VAL(ES)
1400 IF E-0 AND LEFTS <E»,1)<>"0
" THEN 1370
1410 IF EOINTCE) THEN PRINT "p
laasB antar an intagar"|iB
OTO 1300
1420 IF MIN>E THEN PRINT "too I
aw"tiSOTO 1380
1430 IF e>MAX THEN PRINT "too h
igh";!BDTO 1380
1440 RETURN
1450 REM raal numbar input rout
ina
1460 PRINT "antar a numbar batw
aan"|MIN| " and" | MAX
1470 PRINT ", try again"
1480 INPUT E»!E - VAi.(E»):lF E-
0 AND LEFT«(E*,1)<>"0" THE
N 1460
1490 IF MIN>E THEN PRINT "too 1
OH" I I SOTO 1470
1300 IF E>MAX THEN PRINT "too h
lgh"| I GOTO 1470
1510 RETURN
1520 CLSi RETURN
1530 PRINTlPRINT M? "/"lD| "/"; Yi
PRINT
1540 PRINT "Tamparatura ist ";T
I" dag. F" I PRINT
1350 PRINT "Humidity isi "jH)"X
'■: PRINT
1360 PRINT "Baromatrlc Prassura
ist "iBPj" in. Hg"
1370 FOR J-1 TO 35001 NEXT J
ISSB PRINT I PRINT i PRINTlPRINT
1 PRINT
1590 PRINT "PRESS <RETURN> to m
aka anothar foracast
1600 INPUT PS
1610 BOSUB 1S20
1620 GOTO 120
Program 2: IBM PC/PCjr Line
Changes
5 KEY DFFlDEF SEG-0!POKE 1047, P
EEK(1047> OR 64l WIDTH 40ILDCA
TE ,,0
Program 3: Commodore 64
Line Changes
1390 ES="": INPUT E$:E = VAL(ES
)
1480 E5="":INPUT E9!E = VAL(E$
) : IF E=0 AND LEFT? ( E5 , 1 ) <> "
0" THEN 1460
1520 PRINT CHR5( 147) ;: RETURN
Program 4: Atari 400, 800,
XL, and XE Line Changes
HS DIM E«(10) ,T*{14) ,P»(9)
iPOKE a2,0lPQKE 83,39
BI60 FOR J-1 TO 9991NEXT J
Ka250
PRINT "1. N
C4 BPACEB>2.
NE
t3 3PACES>3.
E"
Ct 270
PRINT "4. 8E
t3 SPACEB>3.
3
C4 SPACE9>6.
3W"
GJ 290
PRINT "7. M
{4 SPACES}B.
NW
t3 SPACE3>9.
NO WIND"
Nil 395
T»-"C14 SPACE3J"!REM 1
4 SPACES
HC400
PRINT TS)"2.
AST"
RI3INQ F
DA 410
PRINT T»|"3.
I3INB"
SLOWLY R
m 420
PRINT T»( "4.
FAST"
FALLING
BF 430
PRINT TSi"5.
ALLINB"
SLOWLY F
IL 1390 E»- INPUT
E*i IF E»
>"9" OR E«<
■0" THEN
1370
OE 1400 E-VAL CES)
tL 1480 E*-""i INPUT E»!IF E*
>"9" OR E«<"0" THEN
1460
fB 1485 E-VAL (E*)
*L 1320 7 CHR«< 125) iRETURN
HN 1370 FOR J-1 TO 999iNEXT
J
Program 5: Appie il Line
Changes
1320 HOME : RETURN
Program 6: Atari ST Line
Changes
1 rem delete 160,240,260,28
0,300
5 fullw 2
120 7" Input numbers whsn pram
ptad by ?"
130 7
1520 claarw 2igotoxy 0,0irBtur
n
1580 ?!???
Program 7: Amiga Line
Changes
5 SCREEN 1,320,200, 4, 1:WIKD0W 3,
"", (0,0) -(3 11, 186), 16,1: WINDOW O
UTPUT 3*
COMPUTE!
Subscriber Services
Please help us serve you better. If you
need to contact us for any of the
reasons listed below, write to us at:
COMPUTEI Magazine
P.O. Box 10954
Des Moines, lA 50340
or call the Toll Free number listed below.
Change Of Address. Please oilow us
6-8 weeks to effect the change; send
your current mailing label along with
your new address.
Renewal. Should you wish to renew your
COMPUTEI subscription before we
remind you to, send your current mailing
label with payment or charge number
or call the Toll Free number listed below.
New Subscription. A one year (12
month) US subscription to COMPUTEI is
$24.00 (2 yeors, $45.00; 3 years, S65.00.
For subscription rates outside the US,
see staff page), Send us your name
and address or coil the Toll Free number
listed below.
Delhfery Problems. If you receive dupii-
cate issues of COMPUTEI, if you experi-
ence late delivery or if you have prob-
lems with your subscription, please call
the Toll Free number listed below.
COMPUTEI
1-800-247-5470
IniA 1-800-532-1272
dO COMPUTEI July 1987
.•AV^
witti Flight Simulator
"C0***W*lBOMtJ*:C*^
This collection of flight guidebooks helps you get the
most out of flight simulation software. Designed to be
used with Flight Simulator, Flight Simulator II, F-15 Stril<e
Eagle, and other fighter-jet simulations, these books
contain scores of scenarios that lead you across the
U.S., around the world, into battle, and back to your
favorite landing strips.
Flying on Instruments with
Fllgtit Simulator
Jonathan M, Stern 251 pages
Here's fascinating tionds-on instruction an fly-
ing with instruments in Flight Simulator and
Flight Simulator II. How to fiy in all kinds of
weather — when the cloud ceiling is low or the
visibility is reduced. How to read ond fly the In-
strument approach charts that instrument-
rated pilots use. How fo take off, fly to
another airport, and lond — oil while the clouds
are a mere 200 feet off the ground. And how
to navigate by using the impressive in-
struments available In Flight Simulator and
Flight Simulator II. More than 1 30 actual In-
stalment approach procedure charts. For all
versions of Flight Simulator and Flight Simu-
lator II (Apple, Amiga, Atari, Atari ST, Com-
modore, IBM PC and compatibles, Macintosh).
Flight Simulator or Flight Simulator II required,
Pertect-bound edition
$9.95 ISBN 0-S7455-091 -2
Split-wire-bound edition:
$ 1 2.95 ISBN 0-87455-1 03-X
COMPUTEI's Fllgtit Simulator Adventures
tor the Macintosh, Amiga, and Atari ST
David Floronce, Tom R, Holfhill. and Philip I.
Nelson 227 pages
Fly through mists into mystery. This collection
of 48 exciting, new, customized simulator
scenarios for the Macintosh, Commodore
Amiga, and Atari ST personal computers puts
you in the pilot's seat. The new generation of
Flight Simulator and Flight Simulator II offers
better graphics, eosier-to-use controls, and
more airports. With this book, you'll experience
hair-raising rescue missions, dangerous night
landings, sightseeing side trips, and one-of-a-
kind flights of fancy. Moke COP^PUTEi's Flight
Simulator Adventures your copilot and thrill to
hours of flight.
Flight Simulator or Flight Simulator II required.
$ 1 2.95 ISBN 0-87455-1 0Ct5
Learning to Fly with Flight Simulator
John IJofferty
Learn to (ly like a simulator expert in the
imaginoty world of Flight Simulator and Flight
Simulator II. You'll learn all the fun-
damentals— from takeoffs to landings — in a
single, detailed flight. Then you'll develop
those flying skills by practicing standard rate
turns, executing a flight plan, novigating from
point A to point B, ond more. Learn how to
make precision londings and use the more
advanced instruments In your aircraft. To cap
your training — and turn you into a professional
simulator pilot — you'll learn how to read and
use the actual FAA approach charts commer-
cial pilots fly with. This complete flight-instruc-
tion tutoriol was written by a professional pilot.
$ 1 2,95 ISBN 0-87455-1 1 5-3
40 Great Flight Simulator Adventures
Chorles Gulick 152 pages
This bestseliing volume offers 40 exciting, cus-
tomized flight simulator scenarios for Flight
Simulotor and Flight Simulator II on the Apple
II. IBM, Commodore 64, and Atari personal
computers.
$10.95 ISBN 0.e7455-022-X
S-I-M-U-LATO-R
ADVENTURES
40 More Great Flight Simulator
Adventures
Charles Gulick 236 pages
Forty more challenging flight simulator scenar-
ios for Microsoft's Flight Simulator ond
SubLOGIC's Fllgtit Simulator II. Explore the
world from the oir. For the Apple II. IBIVI, Com-
modore 64, and Atari personal computers,
$12.95 ISBN 0-87455-043-2
Jet Fighter School: Air Combat
Simulator Tactics and Maneuvers
Richard G, Sheffield 177 pages
Learn actual combat maneuvers and much
more with this hands-on book for popular jet-
combot simulators like F-15 Strike Eagle, Jet,
and Ace. Information about Jet fighter pilots
ond their aircraft, especially the F-15, provides
an excellent introduction to the subject.
There's even detailed data obout the weap-
ons available to jet-combat simulator pilots.
The heart of the book demonstrotes, step-by-
step, numerous offensive and defensive com-
bat flight maneuvers, from the HI Yo-Yo to the
Defensive Spiral Drive Tactical tips on F-15
Strilo Eagle scenarios round out the book. F-
15 Strike Eagle or other jet-combat flight simu-
lator required.
Perfect-bound edition:
$9.95 ISBN 0-87456-092-0
Split-wire-bound edition:
$12.95 ISBN 0-87465-104-8
Ask for COMPUTE! Books at your local book or computer store.
To order direct, call toll free 800-346-6767 (in N.Y. call 212-887-8525) or write COMPUTEI Books, P.O. Box
5038, F.D.R. Station, New York, NY 10019.
Please Include S2.00 shipping ond handling in the U.S. or S5.00 airmail. NC residents add 5 percent soles tox and NY
residents add 8 25 percent sales tax. Please allow 4-6 weeks for delivery.
COMPUTE! Publications Jnc.^
Part Qf ABC Co-iiuner Magofres w: ^^^r
Part Qf ABC Co-iiuner Magofres nc
One o! ir« ABC pjUI-Vn-ig CcTipcrW'S
COMPUTE! books ore avoilable outside the Untied States from subsidiaries of
WcGrow-Hill International Book Company,
Computers and Society
David D. Thornburg. Associate Editor
Advancing Technology
Several years ago I finally bought a
color television set. Prior to that
time 1 had been content to watch
TV on an old black-and-white mod-
el that had served me well. My
reluctance to purchase a color TV
didn't come from a lack of money; it
came from a much more debilitat-
ing source — fear of obsolescence by
advancing technology.
It seemed that every time 1
turned around, televisions were
getting better. 1 was afraid that, as
soon as 1 bought a TV, there would
be another quantum leap in tech-
nology and 1 would be stuck with
an "old" model. Of course, by pro-
crastinating, 1 was missing out on
the enjoyment that would have
come from seeing my favorite
shows in color. But still my fear of
being stuck with old technology
kept me from making a purchase.
By the time I finally bought a
color TV, it had become apparent to
me that electronic technology was
in a continuous state of refinement
and improvement, and no amount
of time would be sufficient to insure
that the technology had matured. I
also discovered that^ no matter
what technology was in vogue at
the time, color TV was pretty good!
What About Computers?
I was reminded of my color-TV
experience when 1 heard a presen-
tation by David Moursund from
Oregon State University at a con-
ference 1 attended a few months
ago. David's point was that com-
puter technology is advancing at
such a rapid pace that, in a mere
seven years, the price one has to pay
for a given amount of computing
power decreases by a factor of ten.
The accompanying figure
shows what I mean. Let's suppose
that we can define six classes of
computer technology ranging from
the $10 million super computer to
the $100 calculator. If we start our
chart at 1980, we find that in 1987
we can get mainframe power for
what we use to spend for a mini-
computer, a personal workstation
for the price of a mini, and so on
down to the ubiquitous calculator.
It doesn't matter if the number is
exactly seven years for all classes of
machine, the point David made is
well taken — computer technology
is not standing still, and it probably
never will.
The recent announcement of
the Macintosh II — a workstation for
the price of a microcomputer —
merely adds one more data point to
the graph to help confirm the ob-
servation that we are getting more
and more for less and less.
Protecting Your Investment
While it is nice to be able to stand
back and look at the tremendous
rate of technological advancement,
the consequences of this rapid de-
velopment are less than benign for
many personal computer purchas-
ers. Many people who invested in 8-
bit micros a few years ago are now
finding that 32-bit machines are
available for the same price they
paid for a fraction of the power.
Because computers are thought of as
long-term investments, many com-
puter users have invested as much
in their hardware as they have in
their cars. It is easy to see why many
people get frustrated when a new
computer hits the streets. After all,
at the time of the original purchase,
we each bought the best technology
we could afford, and it is frustrating
to see that our neighbor down the
block can now spend the same
amount of money for ten times the
technology.
I have talked with some people
who "knew this would happen"
and who chose to sit out the com-
puter revolution until "things set-
tled down." If I thought that things
were going to settle down, I would
sympathize with their plight. But,
just as 1 missed years of enjoyment
from color television, those who
would continue to sit out the com-
puter revolution are missing many
opportunities for benefitting from
whatever technology they can af-
ford at the time.
If It Isn't Broken, Don't Fix It
If you have ever felt frustrated by
finding the latest technological
wonder a few months after pur-
chasing last year's model, ask your-
self this question: Does the
computer you bought meet your
needs? If it does, then it will contin-
ue to meet them no matter what
new technology appears on the
scene. If your original computer
doesn't do what you wanted it to
do, then you probably shouldn't
have bought it in the first place.
I continue to use my old Apple
II for some tasks, even though I
have many other more powerful
computers at my disposal. For the
tasks I had in mind when I bought
it, my Apple II still performs well.
The same can be said for my Atari
800 and my Commodore 64. Just
because these machines aren't
glamorous any more doesn't mean
that they should be junked.
Software developers bow in
front of the deity of the "installed
base." The massive number of
Commodore 64s and Apple lis in-
sures that software will continue to
be available for these machines
long after they have faded from the
marketplace.
The Jalopy Of The Future
I envision an entire software indus-
try springing up around the older
computer technologies just as an
industry has been created to meet
the needs of those who collect old
cars. By the year 2000, tinkering
with eight-bit computers will be as
popular as working with old Che-
42 COMPUTEI July 1987
$10 million Super Computer
$1 million IVIainframe
$100 tliousand Minicomputer
$10 thousand Workstation
$1,000 Microcomputer
$100 Calculator
vies is today. And, unlike classic
cars, the low maintenance require-
nnents of computers will guarantee
that there will be enough of them
around to support this industry
quite well.
Planned Obsolescence?
There are still some who subscribe
to the "conspiracy" theory in which
they see a bunch of greedy manu-
facturers who have conspired to
parcel out technology piecemeal
just to take perverse pleasure in
yanking the public around.
This isn't what is happening at
all. The simple fact is that the un-
derlying technology behind today's
computers is continuing to advance
at a rapid pace, and the computer
manufacturers are racing each other
to bring the best possible products
to the market. For example, I have
wanted an Al workstation for years.
Prior to the introduction of the
Macintosh 11, the only workstations
that did what I wanted had price
tags of $40,000 or more — far out-
side my modest budget. As a result
of new technology, I am now able
to get the workstation I wanted for
one-fifth of this price.
Whenever an advance of this
magnitude appears, it has several
consequences. One of the most im-
portant consequences is that it
brings computing power into the
price range of those who couldn't
afford it before. This continuing
downward migration of cost has
long-term consequences of great
value to society.
PC'S Of The Future
To take one example, let's look at
the field of artificial intelligence and
expert systems. Computer science
researchers have spent many years
developing computer programs
that are able to assist people in
making complex decisions by mod-
eling the behavior of human ex-
perts in various fields.
One characteristic of these pro-
grams is that they tend to require
fast Computers with a lot of memo-
ry. When Al workstations had
$40,000 price tags, the only people
who could afford high-quality ex-
pert systems were the universities
and large corporations. Now that
the price for this type of technology
has been slashed (and it will be
slashed again), small companies are
able to have access to the same
computer power as their larger
counterparts.
Education
The one market that seems to be hit
the hardest by the advance of tech-
nology is education. Our schools
have to scrimp and save to pur-
chase what few computers they
have, and it is easy to see why
schools are frustrated by the rapid
rate of advancement in computers.
It would be one thing if computers
just burned out every few years, but
they don't. As a result, it is very
hard for administrators to get fund-
ing for new computer labs when
the old computers are still working.
At the same time, there is an-
other problem lurking in the back-
ground. Today's second grader will
be finishing college in 14 years —
the same amount of time it takes for
two of Dr, Moursund's technology
leaps to occur. This means that
today's second grader will be enter-
ing a work force where micro-
computers will have the power of
today's $100,000 minicomputers
like the DEC VAX. Will today's
children be exposed to new tech-
nology as it becomes available, or
will they still be using outdated
computers and thus be ill-prepared
for the reality into which they will
be graduating?
I once asked Andy diSessa
(from UC Berkeley's School of Edu-
cation) why he was developing
computer languages for children on
$60,000 computers, "Because," he
said, "this class of machine will be
priced properly for the school mar-
ket by the time we finish."
He is right, of course. The key
question is simply this: Would you
want it any other way?
Dr. Thornburg's most recent product is
Calliope'", a "nonlifiear" idea processor
for the Apple He, c, GS, and Macintosh
computers. He welcomes letters from
readers and can be reached in care of this
magazine. _
Attention Programmers
COMPUTE! magazine is currently
iooking for quality articles on
Commodore, Atari, Apple,
and IBM computers (including
the Commodore Amiga and
Atari ST). If you have an
interesting home application,
educational program,
programming utility, or game,
submit it to COMPUTEI, P.O.
Box 5406, Greensboro, NC
27403, Or write for a copy of
our "Writer's Guidelines."
July 1987 COMPUTEI 43
Microscope
Sheldon Leemon
You've probably already heard this
from Radar O'Reilly — IBM has re-
cently announced a new line of per-
sonal computers, completely
replacing the first-generation PCs.
Our unabashed dictionary defines
an IBM product announcement as
the event which officially marks the
end of the sbc-n\onth period of
wondering what IBM is going to
announce, and the beginning of the
six-month period of wondering
what exactly those announcements
mean. So once again, it's time to
drag out the crystal ball, and ex-
plain the true meaning of the IBM
Personal System/2.
First of all, let's make it clear
that none of the new computers
that IBM announced — with the
possible exception of the 80386
models that cost as much as a new
car — -do anything that the current
generation of PC clones can't. Not
yet, at any rate. The low-end Model
30 is an 8 MHz 8086 machine, just
like the under-$ 1,000 Amstrad and
dozens of other clones. The AT re-
placements. Models 50 and 60, are
10 MHz 80286 computers, like
most of the current AT clones. They
all still run Microsoft's MS-DOS
(now up to version 3.3 to accommo-
date yet another raft of minor
changes). They use exactly the
same software as the current PCs.
tk**t*i<K**m'¥***
IBM has magnified the few changes
made in the machines to industry-
shaking proportions:
• Hot New Technology. The new
computers use a lot of custom IBM
parts (as opposed to the off-the-
shelf PCs). These parts are put on
the circuit boards using surface-
mount technology, rather than
sticking the components through
holes in the board. This means that
the new computers will be more
reliable, and can be built by robots
in an automated factory. All of the
subsystems are on boards that plug
together like Lego'''" blocks. But
even though the new IBM systems
will be cheaper to build, they're still
priced much higher than clones
made the old way,
• A New System Bus. The 80286
and 80386 machines include new
16/32 bit expansion slots. This ex-
pansion architecture is extremely
fast, and will provide a lot of un-
specified benefits, as soon as a new
line of peripherals arrives in sup-
port of it. It will even be able to
configure itself for use with expan-
sion cards so users won't need to set
switches — just as they don't with a
Macintosh or Amiga.
• IBM Invents The 3V2-Inch Disk
Drive. All of the new computers
come with 3V2-inch floppies as
standard equipment. Of course, the
Macintosh used them first, then the
Atari ST, the Amiga, and even the
Commodore 64,
• IBM Invents The Analog Color
Monitor. The new IBMs all have
built-in display adapters that sup-
port a brand-new display standard,
VGA. They'll be able to display 256
colors at once in 320 X 200 mode,
and 16 colors at once in 640 X 480
mode. The colors can be selected
from a palette of 256K (262,144)
available colors. Of course, none of
these computers will work with
current digital IBM monitors. They
all need new analog monitors, either
color or black-and-white (64 gray
scales). The Atari ST and Amiga
have used analog RGB color moni-
tors all along, although the many
gray scales are an improvement over
current monochrome modes.
• IBM Invents Built-in Peripheral
Ports. The new IBMs all come with
a minimum of 640K memory, and
built-in serial, parallel, and mouse
ports. Of course, the Mac, ST, and
Amiga all have. . . .
In short, IBM has updated its
computer lineup to current stan-
dards. In some cases — as with its
new graphics adapter, and optional
high-density 1.44-megabyte 3Vi-
inch floppy disk drive — it has actu-
ally advanced the state of the art.
This is not to be sneered at, consid-
ering that IBM usually likes to stay
several months in back of the cut-
ting edge of technology.
So what effect will these ma-
chines have on the rest of the in-
dustry? First, they signal the
triumph of the 3y2-inch floppy disk.
A few die-hards may fight it, but
they'll eventually have to join the
parade. This means that price levels
for 3 ¥2 -inch disks may soon drop to
meet those of 5y4-inch disks. Sec-
ond, these machines should pave
the way for higher graphics resolu-
tion modes on less-expensive home
computers. A minimum resolution
of 640 X 480 appears to be the new
standard. Third, the next genera-
tion of PCs should be compact
desktop units like the new IBMs,
instead of the sprawling monsters
built in the image of the old IBMs.
Other than that, these new comput-
ers shouldn't prove to be "clone
killers." IBM hasn't switched to a
proprietary operating system, nor
has it lowered prices anywhere
near enough to cut into the home
segment of the clone market.
Where IBM hopes these new
machines will have an impact is
with the large corporate customers.
By stressing "connectivity" with
their bigger computers, IBM is sug-
gesting that everybody who owns
an IBM mainframe had better stick
with IBM PCs. Though their $800-
version of DOS that interfaces with
mainframe databases may be years
away, they still are playing on the
fears of corporate America that they
may miss out on big innovations
unless they remain true-blue. The
rest of us who don't own an IBM
mainframe can heave a sigh of re-
lief, and go ahead and buy any
computer that we want to buy. ©
M COMPUTH July 1967
COMMODORE
APPLE SOFTWARE
^^^^^
Adv. Construction
30.95
^^
Alrbean
22,95
Algtbltster
28.95
IBM
Alptia Plol
ASC II Eipress
20,95
73,95
AlgeUlaster
■&.%l
Auto Works
24.98
Ameiican Challenge
14,95
Bag of Tricks 2
26.95
ASC II Eipress
74.95
Bank Street Filer
39,98
Balancs ct Power
29.95
Bank Street Mailer
39.95
Bank SIreet Writer -
58,95
Bank Street Writer
39,95
Breakers
28.95
Bank Street Speller
39.95
Cenidcate Maker
34.95
Bard's Tale
27.98
library Vol, 1
18,95
Beagle Big
14,95
dBase III-
419.95
Seagle Basic
17.95
Dollars i Sense
104,95
Beagle Compiler
40.95
Easy
68.95
Beagle Graphics
29.95
Flighl Sim
21.49
Beneatb Apple DOS
12.9b
Fomrii
BE.95
BigU
17,98
Fo.ilas^
43.93
Bookends
e4.98
Fnlpks 1 Ihru 13 ea. 11.00
Bop & Wrestle
13,95
Fran^ework II
419.95
Captain Goodnight
19.95
Fully Powered PC
24.95
Carmen Sandiego
22.98
Gamecard III
35.95
Cerlificale Maker
29.98
Gato
21,95
Library Vol. 1
19,95
Hacker 1 or II
24.95
Chart'n Graph Tlbi
23.95
Helical Ace
24.08
Classmates
27.95
Jel
31,49
Database Tooltion
23.98
King's Quest 1 or II
28.95
Daz2le Draw
34.95
Lojd Runner
1S.95
Mode
20.98
Locksmith
32,95
DIskOuick
15,95
Lotus
3ie.9S
Dollars & Sense
66.95
Mean IB
34.95
DOS Boss
12,95
Mngng Yr Woney
114.95
Douile-Take
17.95
Micro Cookbook
25,95
Eidolon
!!.9S
Microsoft Word
273.95
Esstdtlil Dala Dup
19,95
Mulliplan
119.95
EitnK
20.95
Newsroom Pro
74.9S
Fantavision
26.98
Norton Ulllilies
58,95
Fat Cat
17.95
Option Board
78.95
Rek Type
14.95
PC Tools
18.95
Rigtil Sim II
30.95
PFS: Access
5S,S5
Fontnn 1,5
53,95
PF3: Files Proles.
948.95
FntpksllhrulS ts
.13.0(1
PPS: First Choice
104,95
Font Works
32,95
PFS; Plan Proles.
148.95
Forecast
34,95
PfS: Write Proles.
148.93
Frame-Up
14.98
Print Shop
3!,93
<:alo
20,95
Print Shop Companion 32.95
GUoe
19.95
Print Shop Gr. =1
21.95
Graphics Department
64.98
ReFlesr Oatabase
66.95
Graplilc Magician
25,95
Report Card
32.95
Graphwoila
44.95
Sidekiek
49.95
GPLE
S5.95
Sideways Ver. =3
38.95
Handle! Package
59.(5
Silent Service
22.95
Impossible Mission
23.95
Speedkey
104.95
1.0. Silver
15,95
SuperCalc 4
279.95
Jeeves
26.95
Superkey
40.95
rCaratcka
19,95
Symptiony
Think Tank
494.95
Knight Dt Diamonds
19.95
99.95
Xid Writer
24.95
Toy Shop
44,95
King's Guest 1, II or III
27,95
Traveling Sideh'ck
40,95
Koronis RffI
23,95
Turbo Database TIbx
40.95
Legacy of Llylgamyn
22.95
Turbo Lighting
58.95
List l^andler
36.95
Turbo Pascal 3.0
S9.9S
Locksmith
36.95
Turtle Prolog
58,95
Macroworks
1S.9S
Turbo Tutor
23.95
Mngng Yr Mone/
98.95
Ulilma III
40.95
Megaworks
CALL
Visable 3093
47,95
Merlin
33.95
Volkswriler Dli --3
139.95
Merlin Pro
54.95
Web. Spell Checker
39.95
Merlin Corr^o
63.95
Wiiardry
36,95
Micro Cookbook
26.55
Word Perlecl
279,95
Millionaire
31.95
Wordstar 2000'
264.95
Minipii 1.2 or 3
14.95
APPLE SOFTWARE
Moeblus 39.95
Mouse Talk 60.95
MouseWlite 67,95
Munch'A-Bug 23.95
NATO Commander 19.98
PFS: Plan 69,95
PFS: Write 69.98
PFS: File 69,95
Piece ol Cake Math 19.95
Pinpoint 47.98
Prince 46.95
Prlntographer 23.95
Prjntmasler 24.98
Print Shop 27,95
PnShpGr. 1.2,3or4 14.95
Print Shop Companion 23.95
Ptobyler 17.95
Pronto DOS 14.95
Program Writer 32,95
Power Print 20.95
Quicken 33.95
Report Card 31.95
Rescue on Fraclalus 23.95
Reportworks CALL
Rescue Raiders 21.95
Science tool kit 41.95
Sensible Grammar 52.95
Sensible Spellei 64,95
Shape Mechanic 20.95
Sideways 38.95
Sllloin Salad 12,95
Skyloi 24,95
Spellworks 27,95
Sprin;boafd Publisher 94.JS
Star Fleet I (Fight) 33.95
Sticky Bear ABC 22.95
Car Builder 23.96
Drawing 22-95
Math 1 or 2 22.96
Math Word Prob. 22.9S
Music 22.95
Numbers 22.95
Printer 22.95
Reading 22.9S
Rd, Comprehensiofi 22.95
Spellgrabbtf 22.95
Townbullder 22.95
Typing 22.95
Sunner Games I a II 22.95
Super Macroworks 25.95
Terrapin Logo 59.95
Think Tank 79.95
Thinkworks CALL
Tip Disk :1 11.95
Toy Shop 33.95
Transylvania 11.95
Trinity 24.95
Triple-Dump 13.95
Turbo Dstaliase Tibi 39.95
Tuti» Pascal 3.0 44.95
Turtle Tutor 21.95
Type 23,95
Ultima III <x IV 39,95
Understanding HE 17.95
Utility City 15.95
Video Toclboi 23.95
Visible 6502 31.95
Wilderness 33.95
Wliardry 26.95
Wiiard's Toolbox 23.95
Wi2print 14.95
Word Handler 16.95
Word Perfect 64,95
Worid's Grist Rbill 22.95
Write Ctiolce 41.95
■ SILICON EXPRESS
Acroiet
22.95
Air Rescue 1
24.95
Bard's Tale
27.95
Bailblaier
22.95
Back to Basics
134.69
Bank Street Storybook
27.95
Bank Street Speller
34.95
Bank Street Writer
34.95
Basic Toolkit
29.95
Blaiing Paddles
24.95
Borrowed Time
20.95
Carmen Sandlego
22.95
Certlllcaie Maker
29.95
Color Me
20.95
Cnldwn to Shldwn
20.95
Fast T(acks
20.95
Galo
20.95
Gertrude's Secrets
20.95
Gl Joe
19.95
Graphics Magician
25,95
Grt Amer Road Race
19.95
Hacker
20.95
Jet
27.95
Jet Combat Simulator
20.95
Karaleka
19,95
Kennedy Approacd
24.95
Kung Fu
20.95
Little Comp, People
24,95
Mall Order Monsters
24,95
IWeriln
34.95
MIg Allay Ace
24.95
Nulllplan 641)2)
43.95
Nato Commander
22.98
Paper Clip
41.95
Print Shop
27.95
Print Shop Comp.
21.95
Pr, SliopGr, 1,2,or3
14.95
Rescue on Fractatus
21.95
Sideways
20,95
Silent Service
19.95
Spitfire Ace
20.95
Spreadsheet
34,95
Sticky Bear ABC
20.S4
Nuabers
20.95
Opposites
20.95
Shapes
20.95
Summer Games 1 or II
22.95
Temple ol Apshal Tril,
22.95
Toy Shop
36.95
Trmlormeri
22,95
World Games
24.95
Worid's Grist Bsiall
22.95
Worid's Grist Rball
22.95
IBM
APPLE
COMMODORE
Ballyhoo
22,95
Clip Art {Vol 1 or 3|
16,95
Clip Art {Vol 2)
2t,95
Copf II -
17.95
Crossword Magic
23,95
Crusade in Europe
22,95
Culttiroats
22,95
Early Games
19,95
Easy as ABC's
20,95
Enchanter
22,95
Family Roots
149,95
Fraction Factory
16,95
F-15 Strike Eagle
19,95
Graphics Eipander
21.95
Ghost Busters
22.95
Hitchhiker's Guide
21.95
Leather Goddesses
24.95
Load Runner
19.95
Magic Spells
20.95
Maslertype
22.95
Math Blaster
26,95
Micro Lg. Baseball
22.95
Micro Lg. Manager
22.95
Micro Lg. Team
13.95
Mind Forever Voy,
24,95
Music Construction
10.95
Newsroom
30.95
OnfrOn^)ne
10,95
Pilstop II
23,95
Planelfall
22,95
Reader Rabbit
22.95
Sargon III
27.95
Sat {Harcort Brace)
24,95
Sorcerer
25,95
Speed Reader II
36,95
Spellbreaker
26.95
Spell II
26.95
Stir Trek 1 or II
24,95
Suspect
25,95
Tus Times
24.95
Ulllisa III
39,95
Temple of Apshal Tri
22,95
Trinity
24.95
Typing Tutof III
Will tfritar
26.95
27.95
Winter Games
21.95
Wlshbrinjer
22.95
Witness
22.95
WoJd Attack
2e.95
Wodd's Grist Btball
19.95
ZorkI
22,95
Zork II or III
25,95
Zork Trilogy
46,95
HARDWAflE
CompuServe Starter
21,95
Datacase
7.95
Disk Notcher
4.95
Flip-n-File
10.95
Lemon
26.95
Lime
41.95
APPL£ HARDWARE
(0 Col, 64K Card |ll E
49.95
Apple Cat II
Disk Drive Cont
134.95
46.95
Disk Drive Hi Tech
119.95
Gibson Light Pen
148.95
Grappler Buffered
114.95
Grappler Pro
73.95
Greppler (serial)
73.95
Grappler C
Hollink
7J.95
44.95
Kralt Joystick HE lie
22.95
Koala Pad *
70.95
Laser 126 Computer
Mech II Joysllcli
366.95
26.95
Mach III Joystick
32.95
Mach IV Joystick
56.95
MIcromodem HE
136.95
Mockingboard A or B
64.95
Mockingboard C
114.95
Multliam CX 512K
173.95
Muhiram HE eO/64K
119.95
Mouse House
7.49
Mouse Mai
6.49
Peddlestlcks
26,95
Parallel Primer Card
44.95
Prometheus 12,95A
254.95
Prinl-ll
122.95
RamlactoT 512K
219.95
Ramlsaar 1 MEG
269.95
Ramworks 512K
199.95
Ramworks 1 MEG
269.95
Super Serial Card
64.95
System Saver Fan
53,95
Thunder Clock
99,95
Wildcard II
69,95
ZEE 8DA diecksiate
54.95
Zoom HE
99.95
PRINTERS
Citen 120D
174.95
SlsrLV1210
169.95
StarNX'IO
249.95
Primer Stand
16.95
Otldala1l!2P
229.95
Oklmate 20
Printer Ribbons
209.95
CALL
Imageivriter Black
4.49
Imagewriter Color
4.99
Imagewriter U Color
Color Paper Pack
11.99
12.95
Prim Shop Refill
11.95
MOHTORS
Magiavoi Monilofs
CALL
Amdek Color 6.95
414,95
5955 E. Main St. Columbus, Ohio 43213
1-614-868-6868
SILICON EXPRESS
5955 E. Main St. Columbus, Ohio 43213
Name.
Address_
City
.State.
-Zip-
Cfiarge • .
. Exp. Dale .
QTY.
DESCRIPTION
PRICE
Compu
Phone
fir Typfi SHIPPING
Mo. TOTAL
Add £3 00 mir U.S sh^pirg, COD. S5.00 extra Hawaii and Alaska $4 95 min Ord&r$
outsldo U S arc rrol insured Canada & Mexico 10% min SiO 00 All oiher coumnes 2S%
mm. S30 00 MasterCafd. Visa and school p jcchase orders acceplad. Personal checks allow
3 weeks. 5 5"^! sates tan tor Ohio rflsklents Deiectrw repJaoed wilhin 20 Cays. 20% restocking
fee if not replaced with same Item. Compalib<lity not guaranteed Prices subject to chartge
wiihoul notice.
v:?^«i^i^fe«i..
It's easy to mal
It's quick.
It's illegal.
It's wrong.
copy.
It's hard to believe.
People who wouldn't think of shoplifting a softwan
product on their lunch hour don't think twice abou
going back to the office and making severs
illegal copies of the same software.
Making unauthorized copies of software is a violation of
Copyright Law. Yet. the problem has reached epidemic
proportions because many people are unaware, or simply
choose to ignore the law, The software industry is urging
decision-makers and software users to take steps to stop soft-
ware piracy in their organizations. In the meantime, the Indus-'
try has been forced to prosecute willful copyright violators.
There are legal, moral and economic imperatives forbidding
theft of copyrighted software.
There is a free pamphlet on the subject. Call or write for a
copy. A copy. A copy. A copy for everyone you know.
Please ask for Priscilla.
A
ADAPSO
1300 North Seventeenth Street
Arlington, Virginia 22209
(703) 522-5055
The World Inside the Computer
Fred D'Ignazio, Associate Editor
Sandbox Fred Rides The Wild Electrons
Now you can send news stories and
wire photos over the telephone just
like the big boys do at UPI and AP.
And it's so simple.
It gives you goose bumps see-
ing yourself captured on a video
image and watching the computer
digitize it and transmit it over the
telephone hne to another person far
away. You feel the same sense of
awe and wonder that an isolated
tribesman in the bush must feel
when he first sees himself in a
photograph.
That digitized image is like a
little electronic "you," and when it
journeys out of your computer and
into the phone system, you feel that
you are going with it — riding the
wild electrons.
The "One Million Stories"
Newsletter
1 have ridden the wild electrons,
and so have several teachers and
students. It all began the other day
when Sandra Pilley and her third
graders sat down at their Apple
computer at Hewitt Elementary
School in Birmingham, Alabama,
and typed in a two-page Newsroom
newsletter. {Newsroom is available
for $49.95 from Springboard Soft-
ware, 7808 Creekridge Cir., Minne-
apolis, MN 55435.) The newsletter
was entitled "One Million Stories"
and was written by Sandra's Skies
and Wings Group. The stories were
illustrated with Newsroom Clip Art
cartoons.
Typical of the stories was one
written by Kris Roberts called "The
Loc Nas Monster," According to
Kris: "It all began in the biggest
swamp ever in the hotel front yard
on a summer day. Snakes dropped
out of trees of course. Alligators
swam everywhere. Mostly some
turtles looked like rocks." Crouch-
ing down in the belly of the story
was a picture of a big, ugly monster,
presumably the dreaded Loc Nas
Monster himself.
After creating the story and
laying it out in the Newsroom Lay-
out work area, Sandra ejected the
disk from the computer and took it
home after school. That night, she
booted up Newsroom on her Apple
lie and entered the Newsroom Wire
Service work area. After answering
questions (like at what baud rate
she planned to transmit), she typed
in my telephone number and then
hit Return, The computer signalled
the modem plugged into Sandra's
home phone, and the modem di-
aled my telephone number.
At my end, the telephone be-
gan ringing, Sandra had taken the
precaution of calling me before she
got her computer to phone me, so I
was ready. I had booted up News-
room on my home computer (it was
an Apple, but it could have been a
Commodore 64 or an IBM PC or
compatible). My computer was in
Answer mode, so as soon as it re-
ceived the phone call, it signalled
Sandra's computer that it was ready
to receive Newsroom files. Sandra's
computer complied, and within
seconds the screen began filling up
with the names of photos, banners,
page layouts, and text panels from
the "One Million Stories" newsletter.
After only a few minutes of
transmission (at 1200 baud) I had
received the entire newsletter. I told
the Wire Service program to hang
up my phone, and 1 turned on my
printer and printed out the news-
letter to make sure it was safe and
sound.
It looked great — especially
when I thought how just a few
seconds before it was lots of little
wild electrons riding the phone line
across central Alabama.
A Grinning, Bearded
Man— Over The Wires
Sandra and her kids had left the last
panel of their newsletter blank so I
could put something in it and trans-
mit it back. I wanted to send some-
thing special, so I booted up my
ComputerEyes/2 digitizer program
(for more on this, see my April col-
umn). I pointed my little JVC cam-
corder at myself, fiddled with the
controls, and captured myself on
the computer picture screen — a
grinning, bearded man making a V
sign for victory. Using Computer-
Eyes/2, I saved my picture as a
Newsroom Photo file, and then
booted up Newsroom. I added a cap-
tion to the photo, and, in the Layout
work area, I tucked the photo onto
the tail end of the Skies and Wings'
newsletter.
A moment later I was on the
phone calling Sandra's house, I
couldn't wait to tell her. I was ready
to send back the entire newsletter —
along with my digitized photo. I
had forgotten only one thing: It was
almost one in the morning — on a
school night!
A sleepy Sandra Pilley came to
the phone and then turned on her
computer and booted up Newsroom
one last time. Five minutes later I
entered the Wire Service and told
the computer to dial Sandra's num-
ber and send the newly modified
newsletter.
And it was sent — without a
hitch. For the first time ever. Sand-
box Fred got to ride the wild elec-
trons— along with the Loc Nas
Monster, the Magic Rock, and Mr.
Fuzzy the spider (who lived in Kris
Roberts' desk and ate Mrs. Pilley's
lunch).
I was dying to find out if San-
dra had received the newsletter
successfully and if she liked my
digitized photo.
But I wasn't brave enough to
call back that night. No sir. ©
July 1987 COMPUTEI 47
c
Since 1981
Lyco Computer
Marketing & Consultants
COMMODORE 64^ 'vs..
• Commodore 1 571 Disk Drive
• Commodore 1 28 Computer
• Thompson 41 20 Color
Monitor w/CaWe
AATARI
130XE System
• 130XE Computer
• 1050 Drive
/
,t
W^ Blue Chip Turbo
X* • dual-speed processor,
4.77 and 8.00 MHz -._--
• 640K internal RAM $749
• color display adapter
Call for details!
BLUE CHIP
f
BLUE CHIP
PERSONAL
COMPUTER
• 100% IBM
PC/XT
compatible!
^Green, amber
& color monitors
available)
COMMODORE
HARDWARE
C-1700 12aK RAM .... S109.95
1750 RAM S169.BS
Indus GT C-64 Drive S185
GEOS S36.95
C-1351 Mouse S39
1670 Modem S99
128 Computer S249
1571 Disk Drive - S229
64 C Computer -. SI 75
1541 C Disk Drive S185
1902 Monitor SZ69
1BQ2C Monitor S1B9
Blue Chip 54C Or SCALL
Blue Chip Cl2a Di SCALL
USD Computer SCALL
1581 Disk Drive SCALL
AATARI
HARDWARE
SF 314 Disk Drive ..,.. S219-95
SF 3S4 Disk Drive S159.95
1050 Drive (XE, XL) .. S139.95
SHD 204 20 MEG Df S589
65XE S9B
520 ST Mono SS15
1040ColOf 5879
Indus GT Atari Drive SI 79
130XE Computer S135
SX 212 Modem sa9.95
BLUE CHIP
HARDWARE
PC5vlDnvB S1 19
MS DOS + Basic SoK S99
6CM 12G Gr. Monitor S89
BCM 12A Am. Monitor S89
BCM 14C Color RGB
Monitor S269
BCC CG Cokjr Card ... S94.99
BCPC PC/XT Comp SS59
AATARI
520 ST Color System
• SC 1 224 Color Monitor
• SF 354 Disk Drive
• 520 Keyboard
COMMODORE PC 1 0-1
A ready-!o-use
package of
computing power
and versatile
graphics!
Commodore 1902
monitor optional
1-800-233-8760
Lyco Computer is one of the oldest and
most established computer suppliers in
America. Because we are dedicated to
satisfying every customer, we have earned
our reputation as the best in the business.
And, our six years of experience in mail-
order computer sales is your assurance of
knowledgeable service and quality
merchandise.
The Reliable, Affordable Choice
limited offer
*wtth interface or
cable purchase
(2-year warranty)
Panasonic
10801
m iCfOfl m ■ int
NP-10 S169
NX-IOC S199
NL-10 S209
NX-15 S329
NB-15 $889
SD-10 S249
ND-15 S425
SR-10 S469
NR-15 S499
NB24-15 S659
NB24-10 S459
ND-10 S329
NB-15 S899
Purchase orders acceptecl from
educational Institutions. Also, ask
about volume discounts!
SP-1200Ai S195
SP-1000AP Itc SI 79
SP-1200AS $195
SP 180VC S145
SL-80Ai S375
MP 1300Ai S369
MP5300Ai S549
BP5420Ai $1075
1300 Color Kit Si 19
BP5420Ribbon $12.50
SPIOOORibbon $8.50
Panasonic
10911 S269
10921 S335
1592 $399
1595 $499
3131 S249
3151 $379
1080 AP lie $239
Versatile and IBM Compatible
/^^^95\.
5510w/coior S435
RS232 serial board SK
Juki 6300 S739
Juki 6100 S369
SILVER REED
EXPA20P S209
EXP 600P S539
EXP800P S649
Okimate 20 S)29
120 NLQ S209
292w rniertace S539
293winleriace S679
182 S245
192+ S35S
193+ SS39
DIABLO
D25 5499
635 S779
D-80IF SI 299
(Special stiipping — call tor
details)
lcccud
NX-10
superb
printing
quality
New Release
SEIKOSHA (2-year warranty)
SP180AI
• 100 cps draft
• 20 cps NLQ
• standard
parallel
and IBM
v^^*
tntroduclory price
^CITIZEN
120 D S17S
Premiere 35 S469
MSP-ia S28S
MSP-15 S38S
MSP-20 S325
Il<SP-25 S485
Tribute 224 S649
Toshiba
321 P.'S S479
P341E S699
P351 Model II S1099
EPSON
LX 86 , SCALL
EX 800 5389
EX 1000 S519
LQ 800 S459
LQ 1000 S649
FXSBE S329
FX 286E S459
LXaOO S169
LOaSOO S949
Monitors
Thompson:
4120 RGB/COM S249
4160 S279
Teknika:
MJ-503 5499
Zenith:
ZVM 1220 S89
7\tM 1230 S89
Panasonic:
TR- 1 22 (Ul YP 1 2" Am TTL..S 1 39
TR.122M9P12"GrTTL- S139
Commodore:
1902 Color 52B5
1802 C 5189
NEC:
Multisync 5CALL
Modems
Avatex 1200hc
Modem
* with cable
purchase
Limited Otter
l^^-
1
Avatex:
1200 S8B
12001 599
2400 5289
Atari:
XM-301 542.95
SX 212 S89.95
Hayes:
Smartmodem 300 5125
Smartmodem 1200 S369
Smartmodem 1200B 5339
SmanmcxJem 2400 5559
Micromodem lie 5125
Smart 300 Apple lie S149
Commodore:
1670 599
US Robotics:
Password 1200 5189
MIcrolink 1200 S139
Microlink 2400 - 5219
Courier HST 9600 SB79
CompuServe 517.95
Xetec Printer ,
Enhancer ^
• 64K memoiy
• multi-tasking
• 7 direct available
fonts
• combines two
dot addressable
printers
List price: S249 \
jgf
Wo stock Intertacing for Atari, Commodore, Apple and IBM,
SOFTWARE
TARISr ^ COMMODORE M (OMMODOKE M ||appkE M IBK
$24.9S
. SNew
$17,95
$34.95
$24.95
$17.95
$24.95
$29.95
$24.95
$24.95
S24.95
S24.95
S24.95
524.95
S48.95
S51 95
$24.95
$24.95
$24.95
$24.95
S24.95
jlator ... S24.95
S14.95
S24.95
S24.95
S24.95
$26.95
$26.95
$27.95
s $27.95
.„. $27.95
;174.95
$59.95
$18.95
$24.95
$54.95
$79.95
laSK .. $32.95
ego $22.95
lunner.. S24.95
I. Ill $15.95
$1B.95
S25.9S
ipan 522.95
er $12.95
$35.95
$24.95
$32.95
532.95
$24.95
$23.95
$29.95
$24.95
snl S13.95
$13.95
Triple Pack S14.95
WId. CI, Leader Brd. ... S24.95
Activision:
Aliens $22.95
Champion. Basketoall , S2Z-95
Hacker $17.95
Hacker 2 S22.95
Labyrinth $19.95
Music Studio $22.95
Portal $24.95
Tass Times $19,95
Tilanie S14,95
MIcroproBO:
F-15 SIhke Eagle $22.95
Gunship $24.95
Kennedy Approach S19.95
Silent Service ..,.., $22.95
Soto Flight $19.95
Top Gunner $19.95
Mtcroleague:
Microleag. Baseball $24.95
General Manager $19.95
Stat Disk S17.95
'86 Team Disk $14.95
Microleag. Wrestling $Neiv
Strategic Slmulallons:
Gemslone Healer $18.95
Gettysburg $35.95
Kampfgruppe $35.95
Phanlasie II $24.95
Phantasie III $29.95
Ring ol Zetttn $24.95
Road War 2000 $24.95
Shard ol Spring $24.95
Wizards Crown $24.95
War m Ilie S. Pacific ... $35.95
Wargame Consir $21.95
Battlecruiser .., $35.95
Gemstone Warrior 514.95
Baltic 1985 $24.95
Field ol Fife 527.95
Battalion Commander . $27.95
Battle lor Normandy .... $27.95
Battle 0( Anietiem $34.96
Cotonial Conquest $27.95
Computer Ambush 539.95
Pro Golf Touf $27.95
Subloglc:
Baseball Stadium $15.95
Flight Simulator II ., $31.95
Jet Simulator $31.95
Night Mission PInball ... $21.95
Scenery Disk $15.95
Sublogic Baseball $31.95
Subfogic Football $26.95
Epyx:
Create A Calendar $17.95
Destroyer $24.95
Fastload $24.95
Football $14,95
Karate Champ 519.95
Movie Monster $14.95
Multiplan $24.95
Sub Bailie $23.95
Winter Games $23.95
Super Cycle $14.95
Graphics Scrapt»ok .... $14,95
St. Sports Basketball ... $24.95
WId. s Great Baseball . $19.95
Summer Games II 524,95
Vofpol Utility Kit 515.95
Worid Games 524.95
Firebird:
Cotossus IV 521.95
Elrle 519.95
Frankie...Hollyvw>od 519.95
Golden Path 524.95
Guild or Thieves $24,95
Pawn $24.95
Talking Teacher $24.95
Tracker $24.95
Starglider , $24,95
Sentry 524,95
HI Tech Expressloivs:
Heart Ware 56.95
Holiday Paper $8.95
Card Ware $6.95
Party Ware $9,96
Unison World:
ArtGaHeiy 1 or 2 SI 5.95
Prim Master 522.95
Dalasofl:
Alt. Reality-Dungeon „. $24.95
eiack Magic $1595
Saracen $15.95
221 B Bakef St $19.95
Action Sort:
Up Periscope $19.95
Tlmeworks:
Partner 64 $34.95
Partner 128 539.95
Swift Cak: 128 539.95
Wordwriter 128 $39.95
#V3pla
Access;
TrtplePack Si 4.95
Activision:
2ofk Trilogy $29.95
Game Maker $29.95
Leather Goddesses $24.95
Term Papet 529.95
Champ. Baseball $24.95
Champ, Basketball S24.95
Championship Golt SNew
GFL Football 524.95
Poital $27.95
Microprose:
Cnjsade in Europe $24.95
Decision in Desert $24.95
F-15 Strike Eagle $22.95
Silent Service $22,95
Microleague:
Microleag. Baseball $25.95
General Manager 519.95
Slat Disk 517.95
■86 Team Disk $14.95
Broderbund:
Airhearl S22.9S
Ancient Art of War S25.95
PnnI Shop 329,95
Pnnt Shop Comp 525.95
Camien S, Diego (USA). .528.95
On Balance $62.95
Bank St. Wrtter 4 S44.95
Strategic Simulations:
Battlecruiser $35,95
Battlegruppe $35.95
Colonial Conquest $24.95
Gettysburg 535.95
Phanlasie II 524.95
Phanlasie III 524.95
Realms of Darkness .... 524.95
Shard ol Spiing 524.95
Wizards Crown 524.95
Subiogic:
Flight Simulator II $32.95
Jet Simulator $26,95
Night Missk>n Pinball ... $22,95
Scenery #l-#6 569.95
Subkjgic Basetall S32.95
Epyi:
Create A Calendar $17.95
Deslroyer 524.95
Karale Champ $19,95
Movie Monster $14.95
St. Sports Basketball ... $24.95
Sub Battle Simulator ... $24.95
Winter Games 524.95
World Games 524.95
Wrestling ..,., 524.95
Firebird:
Colossus lU Chess $24,95
Elite $22.95
The Pawn $27.95
Starglider 528.95
Unison World:
Art Gallery 2 $19.95
Print Master S25.9B
Datasoft:
Saracen S15,9S
^^mURM
Access:
Leader Board $24.95
10th Frame $24.95
Tournament #1 514.95
Activision;
Champ. Basketball $27.95
Championship Golf 524.95
GFLFootbSI 527.95
Hacker 517.95
Hacker 2 $24.96
Music Studio 529.95
Tass Times,,. $24,95
Strategic Simulations:
Computer Baseball ..„„ 524,95
Kampfgruppe $35,95
Sublogic:
Fiigtit Simulator II $32.95
Jet Simulator SCALL
Epyx:
Apshai Trilogy $22.95
Rogue $22.95
Winter Games $22.95
Firebird:
Guild of Thieves $27.95
Pawn $26.95
Starglider 527,95
Unison Worid:
Print Master $24.95
Art Gallery 1 or 2 $18.95
Microprose;
Silent Sen/ice 524.95
IBM
Acthrlsion:
Pebbfe Beach $24.95
Portal $27.95
Champ, Baseball .„ S24.95
Champ. Basketball 524.95
Zork Trilogy $39.95
GFL Football $24,95
Leather Goddesses $24.95
Moonmtst $24.95
Microprose;
Confiict in Vietnam $24.95
Crusade in Europe $24.95
Decision in Desert $24.95
F-15 Strike Eagle $22.95
Silent Scnrice $22.95
Microleague:
Microleag. Baseball $25,95
General Manager $19,95
Stat Disk $17.95
'86 Team Disk $14.95
Epyx;
Apshai Trilogy
$24 95
Create A Calendar ...
, $17.95
Destroyer
, $24,95
, $19,95
Movie Monster
. S14.9S
. 519.95
Hogue
St. Sports Basiietball ,
- $24.95
Sub Battle Simulator .
. $24.95
Winter Games
. 524.95
WorSd Games
. S24.95
Strategic SItnulatlons:
Road War 2000
, $24.95
. $35.95
Kampfgruppe
Sfiard ol Spring
. $24.95
Battle of Anletiem
. $35,95
Computer Baseball ....
. $14,95
Gettysburg
, $35.95
Knights in Desert
. $27.95
Sublogic:
Jet Simulator
. 532.95
Scenery Japan
. $1 6 95
Scenery San Fran
- $15.95
Scenery #l-#6
. $69,93
Subk>gic Baseball
. $32.95
Subkigk; Football
. $32.95
. 536.95
Broderbund:
Ancient Art of War
.528.95
Print Shop ,„
. 537.95
Print Shop Compan. „
. $31.95
Graphic Lib 1 or II
. $21.95
Karateka
. $21.95
. 529.95
Bank St, Writer -
,$54.95
Unison World;
Art Gallery 2
. 518.95
News Master
. $55,95
. $36.95
Firebird;
Starglider
$27,95
Guild ol Thieves
527,95
W -Diskettes .
r
5-1/4
Maxell:
SSDD
... $9.95
DSOD
$12,95
Bonus;
SSDD ..,..
... $6.95
DSDD
... $7.95
SKC:
SSDD
.. $a.95
DSDD
... $9.95
DSHD
. $16.95
Verbatim:
SSDD
.„ $9.95
DSDD
. $12,95
3.5
3M:
SSDD
, $16,95
DSDD
. 523.95
Maxell:
SSDD
. $15,95
DSDD
, $21,95
VerbBtim:
SSDD
, $16.95
DSDD
, $24,95
SKC;
SSDD
. $14.95
DSDD
. $16.95
Lyco stocks loystieks by
WIco. Suncom. Tac, Epyx,
and more, starting as
low
as $5,951
Lyco Means Total Service.
AATARr
Mark "Mac" Bowser,
Sales Manager
All of us at Lyco
Computer are grateful
to ttie millions of
customers who have
helped make Lyco what
it is today. They have
come (0 rely on the Lyco
symbol as assurance of
quality products, the
lowest prices, and
prompt, courteous
service.
Our philosophy is to keep abreast of the
changing market so that we can be ready for any
customer inquiry. We are continually in contact with
manufacturers' representatives, replacing older product lines
with the newest models, and compiling information to help
you select the right product for your needs.
Feel free to call Lyco if you want to know more
about a particular item. Many companies have a toll-free
number ior ordering, but if you just want to ask a question
about a product, you have to make a toll call. Not at Lyco.
Everyone on our trained sales staff is very knowledgeable
about the merchandise we carry, and we're glad to give you
the information you seek. We also have Saturday hours —
one more reason to call us for all your computer needs.
Once you've placed your order with Lyco, we don't
forget about you. Our friendly, professional customer
service representatives will find answers to your questions
about the status of an order, warranties, product availability,
or prices.
Lyco stocks a
multimillion dollar
inventory of factory-
fresh merchandise.
Chances are we have
exactly what you want
right in our warehouse.
That means you'll get it
fast. In fact, orders are
normally shipped within
24 hours.
Shipping on prepaid
cash orders is free in the
U.S., and there is no
deposit required on
C.O.D. orders. Air freight
or UPS Blue/Red
shipping is also available.
So, if you're looking for excellent prices, experienced and
courteous people, immediate access to the quality
merchandise you want, and fast delivery, call our toll-free
number. At Lyco Computer, we're always ready to serve you
in any way we can.
TO ORDER, CALL TOLL-FREE: 1-800-233-8760
In PA: 1-717-494-1030
Hours: 9AM to 8PM, Mon. - Thurs.
9AM to 6PM, Friday — 10AM to 6PM, Saturday
For Customer Service, call 1-717-494-1670,
9AM-5PM, Mon. - Fri.
Or write: Lyco Computer, Inc.
P.O. Box 5088, Jersey Shore, PA 17740
RIsh-Free Policy: • full manutaclurers" warranlies • no sales lax outside PA
• prices show 4% cash discoun!; add 4°o (or credit cards • APO, FPO
international: add SS plus 3% lor pnority • i-week clearance on personal checks •
we check lor credit card ttielt • compatibilrty not guaranteed • return authorization
tequrred • price availability subject to change
Accsss:
Leader Board $24.95
Tournament #t S14.95
Triple Pack $14.95
lOlh Frame $24,95
Actlvlslon:
Hacker S15.95
Hitcn Hikers $22.95
Leather Goddesses S22.9S
Moonmist $22.95
rvtustc Sludkj $22.95
MicroPro se:
Condict in Vietnam $24,95
Decision m Desert $24,95
F-15 Strike Eagle $22.95
Kennedy Approach $19.95
Silent Sen/ice $22.95
Top Gunner $19.95
Micro league:
Microleag. Baseball $24.95
General Mar>ager S24.95
Stat Disk St7.95
'86 Team Disk S14.9S
Broderbund:
Print Shop S25.95
Print Shop Compan $22.95
Graphic Lib. I, II, III $15.95
Karaleka S18.95
Bank St. Writer $29.95
Optimized Systems:
Action $46,95
Action Tool Kit $18.95
Basic XE S46.95
Basic XL S36.95
Bask; XL Tool Kit $18.95
Maces $48.95
Mac 65 Tool Kit $18.95
Strategic SImulalfons:
Battle of Antetiem ^2.95
Battlecruiser S35.95
Nam $24.95
PhantasiB S24,9S
Wargame Construe $18.95
Warship $39.95
Wizards Crown $24.95
Subtogic:
Flight Simulator II $31.95
Night Mission Pinball ... S21.95
Scenery Japan $t5-95
Scenery #1 - #6 369,95
Scenery Disks, each ... St4.95
Epyx:
Eidolon $22.95
Karate Champ $18.95
Koronis Flift $22.95
Summer Games $24.95
Firebird:
GoWen Path „.. $22.95
The Pawn $27.95
Datasoft:
AIL Reality-Dungeon ... $24.95
Gunslinger $19.95
221 B Bator S( $19.95
AATARr ST
Access:
Leader Board $24.95
Toumamenl #1 $13.95
10th Frame S24.95
Acttvislon:
Ballyhoo 523.95
Borrowed Time S32.95
Champion, Baseball .... $29.95
Champion. Basketball . $28.95
Ctiampionship Golf SNew
Firebird:
Pawn
StflrglWer
GoWen Path ..
Guild ot TTilev€
Tracker
INSIGHT: Atari
Bill Wilkinson
Three Questions
I have received a fair number of
letters from 8-bit owners in recent
months, and most people ask one of
these three questions: "Where can I
find a book that tells me . . . ?" "Do
you know of any program that
will . . . ?" "How do I convert my
Atari BASIC program to assembly
language so that I can . . . ?"
Although all your questions
are slightly different, 1 have a few
answers that will work for most of
you, regardless of the ending you
would like to put on any of the
questions.
First, it is an unfortunate fact
that many of the best books for the
8-bit Atari computers (400, 800,
and XL/XE series) are no longer in
print. I would like to hope that
some enterprising publisher might
decide to reprint a few of the best of
these in limited editions, but I am
not going to hold my breath until
that happens. In the meantime,
your best bet is to try to track down
a copy now, while there are still a
few in dealers' hands, What books
am I referring to? There are so
many books that would make my
"nice to have" list that I can't possi-
bly list them here, so, instead, here
(reluctantly) is a limited list of what
I consider my own, personal "basic
necessities" library.
For all programmers:
• COMPUTE'S Mapping the Atari
and then either
• Your Atari Computer hy Lon Poole
or
• ABC's of Atari Computers
by Dave Mentley
For BASIC neophytes:
• Atari BASIC for Kids 8 to 80
For assembly language neophytes:
• Atari Roots by Mark Andrews
• Programming the 6502
by Rodney Zaks
For those who are really serious:
• Atari Technical Reference
Manuals from Atari
and, perhaps the hardest to find:
• Atari Graphics and Arcade Game
Design by Jeff Stanton
Some of these are still pretty
easy to find. Others have all but
disappeared. Still, every so often I
hear of dealers who have a nice
stock of one or more of them. For
example, you may have read in the
May issue of COMPUTE! that B&C
ComputerVisions of Santa Clara,
CA, has a stock of De Re Atari
(which just barely failed to make
my essentials list). I have just
learned that they also have a good
stock of the Atari Technical Refer-
ence Manuals. Dealers rarely ad-
vertise that they have a certain
book — by the time the ad appears,
they may be sold out with no way
to get more copies. So call around,
ask around, check with your local
bulletin board, and/or leave a mes-
sage or two on some of the national
time-share systems that have Atari
interest areas (for example, Compu-
Serve, Genie, and Delphi).
Ask
By now, you probably won't be sur-
prised to find that the answer to
that second question is about the
same: Ask. About the only kind of
programs you can not find for your
8-bit Atari are what I call "heavy-
duty" programs. For example, I
have yet to see a good, complete
civil engineering package. Or an
off-the-shelf order-entry system.
The primary limitations of these
small machines have always been
their slow disk I/O speed and limit-
ed disk space. (Historically, there
has been a more important limita-
tion that I'll address in a future
column. Ironically, I am writing this
column on an 800 XL connected to
a Supra 10-megabyte hard disk
using ICD's SpartaDOS, and I find
that this system now does every-
thing 1 need. But a large percentage
of Atari owners have only one flop-
py disk drive, which is simply not
enough for most business purposes.)
One amazing aspect of Atari
software is the amount of usable
public-domain software available.
But until you join a user group — or,
perhaps, buy a modem and call
some BBSs or one of the national
time-sharing systems — you will be
cut off from this free software.
Converting BASIC To ML
The final question listed above is
actually the most interesting to me:
"How do I convert my Atari BASIC
program into machine language?"
The first and most obvious answer:
Buy a BASIC compiler. I don't want
to belabor this topic now, but you
should know that Atari BASIC is an
interpreted language. It is not fast. If
you could compile your program
into machine language, it would
run much faster. (Of course, getting
a better BASIC interpreter will also
speed up your programs.) Remem-
bering my advice above about find-
ing Atari software, you might be
able to find such a compiler. But
even compiled BASIC doesn't come
close to what is possible in assem-
bly language, (Did you notice my
shift from machine to assembly lan-
guage? There !S a technical differ-
ence between the two, but it is one
we can ignore.)
Many, many articles have been
written that provide you with
handy machine language subrou-
tines that you can call with Atari
BASIC'S USR function. For ex-
ample, also in the May issue, Rhett
Anderson presented a set of rou-
tines for doing bitwise operations
via USR calls. The problem with
most of these routines: They all
tend to reside in the same hunk of
Atari memory (the so-called Page 6,
memory locations $600-$6FF, 1536-
1791 decimal), so you can use only
one or, perhaps, two at a time.
52 COMPUTEI July 1987
What happens when you need
about 20 or 30 machine language
subroutines? 1 did a whole series of
articles, once upon a time, on writing
self-relocatable code, machine lan-
guage routines that can be loaded
anyplace in memory; but it seems I
was fighting a losing battle. In
truth, though, it may be just as well:
If you are ready to use 20 or 30
major assembly language routines,
why not write the entire program in
assembly language?
To do so, you need to learn two
things: First, how to program in
assembly language. Second, how
BASIC performs its various opera-
tions. The first of these needs is
answered by the books I mentioned
in the first part of this article. And
some of those books also go far, far
beyond what Atari BASIC is capa-
ble of. But nobody seems to have
written a book that shows, in a
simple direct manner, how to con-
vert the most common and useful
operations of Atari BASIC into as-
sembly language.
In particular, the topic of Atari
graphics is poorly covered. There
have been volumes written on
display-list interrupts, player-
missile graphics, custom character
sets, and so on. But how does one do
a simple little PLOT in assembly
language? Finding the answer to
that is like looking for the proverbial
needle in a haystack.
When I first saw how well-
designed the Atari Operating Sys-
tem (OS) was, I was impressed. That
was more than eight years ago, and I
still think it is the best OS in the
world of small machines. I think
you'll agree when 1 show you next
month how little work Atari BASIC
must do to perform such seemingly
complex operations as GRAPHICS,
PLOT, and DRAWTO. ®
COMPUTE!
TOLL FREE
Subscription
Order Line
1-800-247-5470
In lA 1-800-S32-1272
=CAPUTE!1
from this
publication
are now
available
from the
UMI Article
liRKiimu^
For more information
about the Clearinghouse,
please fill out and mail back
the coupon below.
Yes! I would like to know more about UMI
Article Clearinghouse. I am interested in
electronic ordering ttirough the following
system(s):
□ DIALOC/Dlalorder D ITT Dialcom
D OnlVme D OCtX: ILL
Subsystem
D Other (please specify 1_
□ I am interested in sending my order by
mail.
□ Please send me your current catalog and
user instructions for the system(s) i
checked above.
Name_
Title_
Institution/Company-
DepartmenL
Address
City
Phone (
_State_
_Zip_
Mail to: University Microfilms International
300 North Zeeb Road, Box 91 Ann Arbor. MI 48106
Atari Laser Chess
A number of lines appear twice in
the listing for the Atari version of
this game from the June issue.
When entering Program 3, simply
ignore the duplicate lines 20020-
21060 on page 48.
Applesoft Memory
Management
The "Readers' Feedback" column
from the June issue included a
question about moving an Apple-
soft BASIC program in memory to
the area above high-resolution
screen page 1. There is an error in
the program line provided in the
answer to this question (p. 52). The
final command in the line should be
RUN rather than LOAD. The com-
plete line should read as follows:
5 IF PEEK(104)<>64 THEN POKE 104,64:
POKE 16384,0; PRINT CHR$(4)"RUN
PROGRAM"
Font Printer For The IBM
PC/PCjr
There are no corrections for any of
the programs that accompany this
article from the May issue (p. 79).
However, the instructions for using
the printing segment. Program 2,
neglected to mention that disk
drive names (A:, B:, and so forth)
should always be entered in upper-
case. Although the computer un-
derstands that A: and a: both refer
to the same drive, the program does
not. Also, the article states that,
when using the same drive for doc-
ument and font disks, the program
will beep twice when it's time to
change disks. Actually, only one
beep is sounded. @
July 1987 COMPUTE! 53
The Beginners Page
lorn R, Holfhill, Editor
Using Variables
I've recently had several letters ask-
ing about variables, so we'll exam-
ine that topic this month.
A variable name is a label given
to a value that represents a number
or string. The value of the variable
may change Vk'hile the program is
running.
For example, in the early part of
a program you may define N to be 5
(N = 5), so variable N v^ili have the
value of 5. Later in the program you
may redefine N vdth N = 8. You
may also use an expression such as
N = N + 1. This expression means
to replace value N v^^ith N + 1 . If N
was 8, it becomes 8 + 1, or 9.
You will want to use a variable
name whenever you are working
with numbers or strings that could
change. For example, you could use
the variable S for Score. As points
are made, you inaement S.
A string variable name ends
with a dollar sign. For example, you
may read in from DATA a value for
NAMES, print NAMES, read in an-
other NAMES, and so forth.
Variables And Constants
Many statements specify parame-
ters which may be numeric con-
stants or variables. Using variables
allows changes to be made rather
easily. For example, consider draw-
ing graphics on the screen. Let's say
you want to draw a train car that
has four wheels visible. The center
of the first circle can be specified
with variables X and Y. The center
of the next circle can be relative to
the first, with X + 20 and Y. The
third circle may be X + 80 and Y,
and the fourth may be X + 100 and
Y, Before you draw the four circles,
you need to define X and Y, so you
can use the CIRCLE command to
draw the wheels. Now let's sup-
pose the wheels are not positioned
quite right. They need to be higher
and a bit more toward the center of
the screen. If you had used con-
stants in the CIRCLE commands,
you would need to change the con-
stants in th^ four CIRCLE com-
mands. However, by using
variables, all you need to do is
change the definitions of X and Y.
Another place 1 like to use a
variable is as a timing function in
music commands. Use a variable
such as N for a quarter note. An
eighth note would be N/2, and a
whole note, N * 4, You can write all
the sound commands in terms of
that variable duration and define N
at the beginning of the program. To
speed up or slow down the whole
piece, you simply need to change
one statement defining the duration
N — not every sound command.
Another example of variable
usage is to define the variables and
then call a subroutine that uses
them. For example, you might have
a subroutine that draws a hexagon
with a starting point of row R and
column C and with the length of a
side equal to S. To draw a hexagon
on the screen, simply define R, C,
and S; then GOSUB for the drawing
routine. To draw another hexagon,
redefine R, C, and S; then GOSUB.
Naming Variables
How do we name variables? Most
versions of BASIC specify that a
variable name must contain alpha-
numeric characters (letters plus
numbers) and must start with an
alphabetic character. Some BASICs
allow certain symbols such as the
underline or the at sign (@) to be
part of the variable name.
There are just a couple of re-
stricHons. Some computers recog-
nize only the first two characters of
a variable name, even though the
name may actually be longer. In
such a case, the variables BLACK
and BLUE would be considered the
same variable — BL. Some comput-
ers do not allow a variable name to
contain a reserved keyword. For ex-
ample, FORK, KNIFE, and SPOON
would not be acceptable variable
names because they have the em-
bedded keywords FOR, IF, and ON.
Newer computers are allowing
longer variable names and aren't so
picky about embedded words.
Also, BASIC does not recog-
nize a difference between lower-
case and uppercase letters. Thus,
STARSHIP, Starship, and starship all
represent the same variable.
Many of the early BASIC pro-
grammers started programming in
FORTRAN. Any integer variable in
FORTRAN had' to start with I, J, K,
L, M, or N. Out of habit, the pro-
grammers carried over that tradi-
tion to BASIC and used those letters
for variable names in FOR-NEXT
loops or as counters or flags. You
can choose much more meaningful
variable names, such as FOR
ROW = 1 TO 24 . . . NEXT ROW.
Another habit from the early
days of micros was using A for the
first variable used in a program, B for
the second, and so on. Back when
computers had small memories, it
really helped to use variable names
with just one letter. I also recall that
some of the early machines tracked
the variables in alphabetic order, so it
was faster to use variables from the
first part of the alphabet.
Now, with faster and larger-
memory computers, the trends for
naming variables are changing.
Most programmers like to use vari-
ables that mean something. Rather
than A, B, C, X, and Y, you might
see names such as AREA, LENGTH,
NUMBER, FLAG, SCORE, and
HIGH^CORE. This is a way of do-
cumenting your program. Also,
you'll find it much easier to keep
track of variables if you name them
meaningfully — and using mean-
ingful variable names is one of the
advantages often listed for pro-
gramming in Pascal. Now you can
do the same in BASIC. ©
54 COMPUTEI July 19B7
Telecomputing Today
Arlan R. Levitan
Computer III — The Verdict
Good news for telecomputers
comes from Washington, D.C. In
April, the Federal Communications
Commission ruled on two items
that were of keen interest to online
computer users. The FCC ruled
against regulation of network-
based information services and pro-
hibited the Bell Operating
Companies (a.k.a. the phone com-
panies) from offering information
services of their own.
This means that commercial
information services and services
such as Telenet's PC Pursuit will
not be forced to pay access charges
for interconnecting their private
networks to the local phone system.
It was widely felt that the access
charges would have been passed on
to the consumer in the form of
higher hourly connect-time rates.
The FCC ruled that, since there is
currently no competition for local
phone service, the BOCs would
have an unfair competitive advan-
tage over independent information
providers. Apparently, the FCC
noted the influx of mail from the
telecomputing community. Many
thanks to the readers of this column
who wrote the commission to ex-
press their views on Computer III.
Exchange Shut Down
Even without new regulations from
the FCC, PC Pursuit is still experi-
encing some growing pains. Pursuit
recently had to axe 20 exchanges
from its San Francisco service area
because of higher-than-expected
costs. If local phone companies in
other cities raise their rates, service
to more exchanges may have to be
dropped. Some users have also
been grumbling about the lack of
2400 bps service on Pursuit. Imple-
mentation of 2400 bps Pursuit links
is still in beta test and over a year
tardy. Rumor mongers claim that
the holdup is throughput little bet-
ter than the current 1 200 bps due to
network congestion and delays.
Going Once, Twice . . .
Reader's Digest has apparently de-
cided to forego the videotex market
and stick with the printed page. In
April it sold off The Source to a
group of venture capitalists. Al-
though the author of this column
could not contact any of the parties
involved, they would have surely
stated "By George! Some fellow at
COMPUTE! predicted that this
would happen last January!"
Daylight Savings Time
CompuServe subscribers may not
have to wait until dinner is over to
link up with the service at budget
rates. As of late the service has been
experimenting with lowering its
daytime hourly connect charges.
During April and May, prime time
rates were made the same as stan-
dard evening and weekend charges
($6 per hour for 300 bps and $12.50
per hour for 1200 and 2400 bps). If
the trial is successful, don't be sur-
prised if the lower daytime rates
become permanent.
Polly Want A Modem?
Last month's column briefly
touched on the new wave of com-
pact, battery-powered modems that
are finding favor with laptop com-
puter users. Novation, a long-time
manufacturer of data communica-
tions equipment for the computer
hobbyist, has just upped the ante in
the compact modem market. Nova-
tion's new "Parrot 1200" is a
300/1200 bps unit that supports
the Hayes "AT" command set and
is roughly the size of an audio cas-
sette. The Parrot sports four indica-
tor lights and a speaker for
monitoring the progress of calls,
and it requires no batteries or AC
power transformer. When the mo-
dem is activated, all required power
is drawn directly from the RS-232
port. The most impressive feature
of the Parrot 1200 is the suggested
list price of $119, well under the
$200-$260 price of its competitors.
So Sue Me . . .
Having grown tired of letting
spreadsheet software firms hog the
"Lawsuit of the Month" spotiight,
communications firms struck back
in April.
A U.S. District court ruled that
Softklone Distributing's Mirror in-
fringed on the copyright of a screen
display of Crosstalk, a popular com-
munications program for the IBM
PC and compatible computers. The
hot issue was one screen of Mirror,
which was virtually identical to
CrosstalI<'s primary status screen
display. At best, the court's ruling
was a modest victory for Crosstalk
distributor DCA, who had sought a
more extensive "look and feel" in-
fringement ruling. Softklone re-
sponded by immediately shipping a
new version of Mirror in which the
structure, capitalization of words,
and highlighting of the screen in
question had been modified.
No sooner had Mirror vs. Cross-
talk been put to bed than another
U.S. District Court ruled that US
Robotics and Hayes Microcomputer
Products will duke it out in the
courts. The court refused to dismiss
antitrust charges brought by USR
against Hayes, who had asked that
the suit be tossed on the grounds of
improper filing and bogus claims.
The US Robotics suit charges Hayes
and Business Computer (Bizcomp)
with attempting to monopolize the
personal computer modem market.
It's likely that the dust won't begin
to settle until the summer of 1988, at
which time the ghost of Herman
Hollerith will likely appear and sue
the computer industry at large for
appropriating the "look and feel" of
the ASCII character set. ®
July 1987 COMPUTE! 55
AmigaView
Sheldon Leemon
Using Your Printer Witli Tlie Amiga
One of the most misunderstood as-
pects of the Amiga is how its printer
device works. Most computers use
a "dumb" printer device, like the
MS-DOS device PRN:, that sends
each character to the printer exactly
as it receives it. When you want to
make your printer perform a special
function, like underlining or bold-
face print, you use this device to
send a special sequence of charac-
ters to the printer. Such a sequence
of characters is sometimes called an
escape code, since most start with
the escape (ESC) character, ASCII
character 27. Escape codes vary
from printer to printer, so the com-
mand to start underlining on one
printer may not mean a thing to
another printer. So every IBM pro-
gram has to know the specific codes
for your printer in order to activate
its special features. For example,
each word processor comes with its
own collection of printer driver files
that tell it how to use the special
features of each printer. Since
there's no standard format for IBM
printer driver files, the WordPerfect
printer drivers won't work with
Microsoft Word.
The Amiga's Answer
The Amiga, on the other hand, has a
"smart" printer device called PRT:.
This device uses the settings that
you've saved with the Preferences
program to find out all about your
printer (these preferences are saved
in a file called System-Configura-
tion in the Devs directory of the
Workbench disk). PRT: checks to
see which printer you've selected
from the Change Printers screen of
Preferences. The device reads in the
printer driver file whose filename
corresponds to the printer you've
selected (it looks for this file in the
Devs/Printers subdirectory). This
printer driver file tells PRT: what
special features your printer sup-
ports and how to access them. It also
contains a program for printing
screen graphics on your dot-matrix
printer.
With the Amiga's smart PRT:
device you don't have to know the
printer-specific code for each special
feature. Instead, you send it an
Amiga-specific code, and PRT:
translates that into your printer's
own code. If your program wants
the printer to start underlining, for
example, it sends the Amiga -specific
code ESC[4m to PRT:, and PRT:
sends your printer the correct code
to start underlining. The important
thing to remember is that not only
will the PRT: device not respond to
your printer-specific escape codes, it
will also not even pass them on to
your printer. Any escape code that
PRT: doesn't recognize will be
ignored.
Of course, you can still send
escape codes directly to your print-
er via the Amiga's dumb printer
device, PAR:. This device sends
characters straight through to print-
ers connected on the parallel port.
The SER: device sends them to seri-
al printers. But if at all possible, you
should try using the Amiga's codes
and PRT:. That way, your program
will work with any printer, and,
should you happen to switch print-
ers six months down the road, you
won't have to rewrite the program
completely.
The following short BASIC
program shows you how to send
commands to your printer through
either the dumb or smart printer
devices. Since the Toshiba printer
that I use is not that common, odds
are the sample codes used for the
PAR: device won't work with your
printer. But, the PRT: version
should work with any printer, pro-
vided that the proper printer driver
is installed from Preferences.
A? - "Condensed Print is OM "*
BS = "Condensed Print is OFF "*
' PAR; device - works only with
Toshiba printer-*
OPEN "PAR:" FOR OUTPUT AS #1*
FS = CHR$(27) + "[" + AS*
G$ = CHB?(27) + "]" + BS + CHRSf
13)*
GOSUB DoPrint*
' PRT
: device
- works
with Atr
rinter*
OPEN
'PRTs" FOR OUTPUT AS *1*
FS =
CHRS(27)
+ "[4w"
+
AS*
GS =
CHR$(27)
+ "Caw
+
BS*
GOSUB
DoPrint
END*
DoPrint :*
PRINT
»1, : PRINT »1,
F?
GS*
CLOSE
»1 : RETURN*
A full list of Amiga printer es-
cape codes can be found on pages
22-25 of "Introduction to Amiga
Update" in the manual that comes
with Version 1.2 of AmigaDOS.
Here are a few of the more com-
monly used codes. Remember that
ESC stands for CHR$(27), the es-
cape character.
Feature On Off
Italics
ESC 3m
ESC 23m
Underline
ESC 4m
ESC 24m
Bold
ESClm
ESC 22m
Expanded
ESC6W
ESC5W
Condensed
ESC[4w
ESC[3w
The secret to using PRT: is having
the correct printer driver file in-
stalled on your Workbench disk.
What if you have an odd printer that
isn't supported directly? First, you
might try finding a public-domain
driver on a BBS or an information
service, or a commercial driver from
a software company. But if you can't
find one, you might try making one
yourself viath a shareware program
called PrtDrvGen by Jorgen Thom-
sen. This impressive program can
help create a driver for almost any
conceivable printer, from 8 pins to
24 pins, black-and-white or color.
The program comes with a fantastic
set of help screens that give a great
deal of insight into how PRT: uses
the printer drivers. At a suggested
donation of $10, it's the best soft-
ware bargain of the year. You can
contact Jorgen on CompuServe (ID
71310,2206) or PeopleLink
Q.THOMSEN). ©
56 COMPOTEI July 1987
ST Outlook
Philip I Nelson, Assistant Editor
Journey From The Center Of The ST: Part 2
Our tour of the ST's system soft-
ware began last mor\th with a look
at the three elements of its operat-
ing system: BIOS (Basic Input/Out-
put System), XBIOS (Extended
BIOS), and GEMDOS (GEM Disk
Operating System). This month
we'll conclude by examining GEM,
the user interface that lets you con-
trol the operating system.
Who Needs An Interface?
An operating system, as we noted
earlier, gives the computer the basic
equipment needed to perform use-
ful work. But without a user inter-
face of some kind, you still can't
make the system do your bidding.
In older systems such as CP/M or
MS-DOS, the user interface is the
notoriously unfriendly command
line, which waits for you to type in
some magic words and responds
with an electronic raspberry if you
use the wrong lingo or make a typ-
ing error. GEM replaces the com-
mand line interface with a graphics
interface. As on the Macintosh or
Amiga, the screen depicts a work
surface populated with graphic ob-
jects whose form suggests their
purpose: The trash can is where
you discard unwanted material, for
instance. And this interface is
mouse-driven instead of keyboard-
driven: Rather than type arcane
commands on a keyboard, you use
a mouse pointer to manipulate
graphic shapes.
In terms of ultimate results, the
GEM desktop doesn't differ notably
from, say, the MS-DOS command
line: Both interfaces allow you to
run programs, shuffle files around,
and find out what's on a disk, for
example. But the way you do those
jobs is very different. By substituting
a set of related visual metaphors for
a list of gobbledygook commands,
GEM, the Graphics Environment
Manager, creates a coherent little
world in the computer which is
certainly easier to learn, if not inher-
ently more efficient, than the old
command line environment.
GEM is composed of three ma-
jor parts, known as VDI (Virtual
Device Interface), GDOS (Graphics
Device Operating System), and
AES (Applications Environment
Services).
VDI
VDI, which includes well over 100
functions, is concerned mainly with
drawing and text operations. There
are VDI routines to draw points,
lines, and polygons, fill enclosed
areas, display and manipulate text,
control screen colors, and so forth.
The name Virtual Device Interface
underscores an important charac-
teristic of GEM, which is that it's
designed for device-independent
graphics output. Unlike the Macin-
tosh and Amiga graphic interfaces,
GEM was not written with a specif-
ic host computer in mind. In theory,
at least, it can work on a variety of
machines, which may have differ-
ent screen sizes, numbers of colors,
and so on. Accordingly, VDI allows
you to write programs that aren't
tied to specific hardware. Thus,
rather than program specifically for
a particular device like the ST color
monitor (although that's always an
option), you can program for a vir-
tual, or ideal, display device, un-
concerned about such details as the
number of dots or colors on the
physical screen. In effect, a device-
independent program says to the
system, "I don't care how you get it
done, just do it."
GDOS
It's the task of GDOS, the Graphics
Device Operating System, to help
translate ideal, device-independent
graphics requests into output on an
actual device. Just as a disk operat-
ing system mediates between a pro-
gram and file-storage hardware,
GDOS mediates between a pro-
gram and graphics hardware. As an
example of what GDOS does, con-
sider a desktop publishing pro-
gram, which needs to support a
variety of printing devices and a
number of different text fonts,
GDOS allows such a program to
load fonts and device drivers as
needed, and to access them once
they're in memory.
AES
At the top of the GEM/TOS soft-
ware hierarchy is AES, which
stands for Applications Environ-
ment Services, This group of rou-
tines gives life to the surface
characteristics of GEM: the mouse
pointer, menus, windows, icons,
and interactive dialogs,
A single AES routine can do a
lot, and it may call on several other
levels of system software. Consider,
for instance, the familiar file-selector
dialog used to choose a filename in
GEM applications. To create this di-
alog, GEM must first save the con-
tents of the screen underlying the
dialog box and draw the box with all
of its gadgets in place. Then it must
respond to your manipulation of the
box, displaying the contents of
whatever disk and subdirectory you
choose. When you choose OK, GEM
remembers the DOS path and file-
name that you have chosen and
erases the box, restoring the image
that previously occupied that area.
All this is done with just one call to
the AES routine known as fseL
input. In addition to such large-scale
routines, AES has routines to handle
GEM's smaller details, like the
shape of the mouse pointer.
We've covered a lot of ground.
There still are a few minor items
floating around at the operating
system level (line A exceptions, for
instance, or intelligent keyboard
processing). But if you understand
what makes up TOS and GEM, you
know basically what's inside the
ST. @
July 1987 COMPUTEI 57
IBM Personal Computing
Donald B. Trivette
Fishing in The Washington Post
If you think that Dow Jones News/
Retrieval is a source for business
and financial information, you're
right; but it also has a considerable
amount of general information
such as book and movie reviews,
weather reports, sports scores, and
even a discount shopping service.
And there's one rich deposit of con-
sumer information that's often
overlooked because it's stashed
away with the business data.
The DJNR has a full-text search
and retrieval service for a variety of
business and financial publications
including The Wall Street journal,
The Dow Jones News Service, Forbes,
Barron's, and The American Banker.
It also has electronic copies of The
Washington Post dating back to Jan-
uary 1984, and the issues of that
newspaper are full of consumer-
oriented columns and features.
Let's check out what the Post
has to say about saltwater fishing.
We'll assume that you have a mo-
dem, communications software,
and an account with Dow Jones
News/Retrieval, and that you
know how to use all three. If not,
you can open a News/Retrieval ac-
count by by calling 1-800-257-5114
(loll-free) or 1-609-452-1511 (in
New Jersey). After signing-on to
DJNR, type //TEXT to bring up the
text-retrieval database and to dis-
play the opening menu. This is the
point where you select The Washing-
ton Post — number 3 on the menu —
as the source you want to search.
//TEXT prompts for your in-
put by typing a number; you may
enter queries in upper- or lowercase
letters, but do not use any punctua-
tion like commas or periods. The
DJNR Guide shows many examples
of how to enter search terms. The
first thing I do in //TEXT is turn on
the detail switch so I can see the
particulars of a search. Notice that
//TEST commands begin with two
periods; this is to distinguish them
from search terms.
1; ..»el detail = on
Next we want to look for arti-
cles— documents is the term DJNR
uses — that have to do with fishing.
These could contain the word fish,
fisherman, fishing, or some other
variation of fish, so we'll use the
//TEXT wild-card symbol to look
for fish with any ending. (This
works much like the * symbol in
DOS DIR.)
1: fishS
DJ/NRS PAGE 1 OF 11
00001 FISHS
EI417 • TOO MANY WORDS FOR FISHJ—
QUERY ACCEPTED WITH WORDS AND
COUNTS FOR TERM ONLY UP TO THE
OVERFLOW.
FISHS
FISH 3816 DOC
FISH.FROM 1 DOC
FISH.IN 2 DOC
FISH- I DOC
FISH-AND-CHIFS 1 DOC
FISH-AND-LEMON-GRASS 1 DOC
FISH-AND-VEGETABLE 1 DOC
FISH-BELIY 1 DOC
FISH-BONING 1 DOC
FISH-BOWL 1 DOC
FISH-BUYING 1 DOC
FISH-CLEANING 3 DOC
FISH-COUNTER 1 DOC
After a minute, DJNR reports
more than three thousand docu-
ments in The Washington Post data-
base that contain fish in the text. It
then it starts to list the first of 11
pages. Obviously, this is too many
for us to review; we need to narrow
our search to a more manageable
size. Let's try entering (SPORT OR
SPORTS) SAME AS FISHING for a
search term. This says we're look-
ing for all articles that have the
words sport or sports in the same
paragraph as the word fishing. The
results are:
2: (sport or sports) same fishing
DJ/NRS SEARCH MODE
00002 (SPORT OR SPORTS) SAME FISHING
SPORT 3062 DOC
SPORTS 28586 DOC
FISHING 1904 DOC
RESULT 143 DOC
Now we're down to something
more manageable, but we still can't
review 143 documents. Suppose we
also restrict the search to those arti-
cles that contain the word saltwater.
We don't have to reenter the search
term used in number 2, but rather
we can add to it as follows:
3: 2 same saltwater
DJ/NRS SEARCH MODE
00003 2 SAME SALTWATER
2 (SFORT OR SPORTS) SAME
143 DOC
SALTWATER
114 DOC
RESULT
5 DOC
Now we're dowm to just five
articles. We could print all of these
and use the capture feature of the
communications software to save a
copy in a disk file for leisurely read-
ing when we're offline. But down-
loading even five documents can
take a long time, and, since DJNR
charges by the minute, we want to
minimize the length of time we're
connected. Instead, we want to re-
view the headlines (HL) of these
five documents along with the
dates (DD) they were written, then
decide which ones are worth a fur-
ther look.
An alternate strategy is to read
the first page of each of the five
articles and then make a decision. I
suppose a professional researcher
would choose that method since it's
more thorough, but it does take
longer — and I've had very good re-
sults looking at just the headlines.
It's very important to include the
accession number (AN) in the dis-
play because, once we've decided
on an article, we can use that num-
ber to retrieve the document with-
out having to redo the search.
We'll use the ..CP (Continuous
Print) command so the display
won't pause at each screen — how-
ever this command is dangerous to
use for anything that might pro-
duce a large amount of output be-
cause there's no way to stop it.
Even if we hang up the telephone,
the computer will continue to
58 COMPUTEI July 1987
"print" the information and we'll
get charged for a lot of time. The ..P
(print) command pauses after each
screenful of information, giving us
a chance to stop the printing. Nev-
ertheless, ..CP is safe enough for
just printing headlines.
i: ..CP Hi,DD,AN/DOC=I-5
DOCUMENT 1
AN 840323-0057.
HL INFORMATION FOR FISHERMEN:
THESE FOLKS CAN HELP YOU OUT
DD 03/23/84
To save space, I've included
only the first headline, but some of
the other titles were "Fishermen
Take Last Legal Rockfish" and
"Sporting Life." We can print this
article now by entering ..CP
/D0C=1 (don't forget to turn on
capture so you'll save a copy to
disk), or we can logout of Dow
Jones News/Retrieval and go back
next week or next month to print
the article. For example, there's no
need for you to reproduce the
search if you'd like to read this
piece; Just enter a search term to
locate the article by its accession
number (1: 840323-0057.AN.), and
then'enter the ..CP /D0C = 1 com-
mand to print it.
Using the //TEXT database
can be a little intimidating for first-
time users, but the key to success —
as in most things — is advanced
planning. Write down search terms
and commands before you call
DJNR, and leave the capture active
during the entire session. That way
you'll have a record of everything.
Good fishing.
Donald B. Trivette is the author of A
Guide to Dow Jones News/Retrieval
published by COMPUTE! Books. ®
COMPUTE!
TOLL FREE
Subscription
Order Line
1-800-247-5470
InIA 1-800-532-1272
Only NRI teaches you to service all
computers as you build your own
fully IBM-compatible microcomputer
With computers ■■ ^MS ~ ^^^^^^^^B
TmnHBIUMsramsl
firmly estab-
lished in offices
—and more
and more
new applica-
tions being
developed for
every facet of business—
the dem.and for trained
computer service tech-
nicians surges forward.
The Department of Labor
estimates that computer
service j obs will actually
double in the next ten
years— a faster growth
rate than for any other occupation.
Total systems training
No computer stands alone . . . it's
part of a total system. And if you
want to learn to service and repair
computers, you have to understand
computer systems. Only NRI
includes a powerful computer system
as part of your training, centered
around the new, fuUy IBM-compat-
ible Sanyo 880 Series computer.
As part of your training, you'll
build this highly rated 16-bit IBM-
compatible computer system. You'll
assemble Sanyo's "intelligent"
keyboard, install the power supply
and disk drive , and interface the
high-resolution monitor. The 880
Computer has two operating speeds:
standard IBM speed of 4.77 MHz
and a remarkable turbo speed of 8
MHz. It's confidence-building, real-
world experience that includes train-
ing in programming, circuit design
and peripheral maintenemce.
ing induiJes silot thil Hfll Osowwy L3li-
ilk'ViJu-tliFOitglim',.^,.— .- ,^^-, ,.^, .^ ,^,
anrnjlkn cf campulet cirnils • Sar^SBO Scries Com
" i3ncl360Ktfr>uf'- ^--^ '- ^-
cluBing GW BASIC. MS DOS. WordSlar. C^lcStj
inuv.!, ichtmatiEs. and bde-iuid kjwni.
NRIistheonty
technical school
that trains you on
a total computer
systom. You'll
install and check
Iteytjoard. power
supply, disif drive,
and monilor,
following step'by.
step directions.
No experience necessary —
NRIbuUdsitin
Even if you've never had any
previous training Ln electronics,
you can succeed with NRI training.
You'll start with the basics, then
rapidly build on them to master
such concepts as digital logic,
microprocessor design, and
computer memory.
Send for 100-page free catalog
Send the coupon today for NRI's
100-page, full-color catalog, with all
the facts about at-home computer
training. If the coupon is missing,
write to : NRI , 3939 Wisconsin
Ave., NW, Washington, D.C. 20016.
SEND COUPON TODAY FOR FREE NRI CATALOG!
SCHOOLS
McGraw-Hill Continuing Education Center
3939 Wisconsin Avenue. NW, Wastiington, E
We'll give you lomorrow.
^
For Career courses
approved under Gi Bill
n cneck (or details-
CHECK ONE FREE CATALOG ONLY
^1
[Zl Computer Bectrenics
n TV/Audio/Video Servicing
O Satellite Electronics
n Hotwiics i Industrial Control
D Data CommuiTicallons
D Indusirial Eleclronics
n Communications Electronics
D Electronic Design Technology
D Telephone Senricin^
D Digital Electronics Senricing
n Basic Electronics
D Electricians
□ Appliance Scrvic ng
□, Small Engine flepair
n Air Conditioning, Heating, i,
^ Refrigeration
U Locksmithing 4 Electronic Security
G Buiiding Construction
G AutotTWlive Servicing
G Ptiotograpliy
G Bookkeeping i, A«c>unling
NarT>fl {Please prim)
Age
Li
CItyrSlale/Zip
Accredited by the National Home Study Co jncll
0?7
P/M Magic
"¥ jlA Magic" is a complete tool for
the Atari BASIC programmer zoho
wishes to use Player/Missile (P/M)
graphics. It's a machine language
program that enables fast movement
and animation of both players and
missiles from BASIC. With this sys-
tem, you can create arcade-quality
graphics and animation without be-
ing a machine language expert.
"P/M Magic" is designed to handle
all the aspects of arcade graphics
that BASIC can't handle. And be-
cause it runs as a background task,
during the computer's vertical
blank interrupt, P/M Magic is in-
visible to BASIC, doing its work
without slowing down BASIC oper-
ations, Here are some of the fea-
tures that P/M Magic provides:
• High-speed animation of two
players
• Eight-direction missile firing log-
ic for two players
• Player and missile movement
limits
• Missile collision detection and
automatic missile reset
• Two players control with one
joystick
• Multicolored, double-width, or
shadowed players
• Detailed and realistic explosions
• Variable speed for players and
missiles
• Works with any graphics mode,
in one- or two-line resolution
Gary Costonza
Typing In P/M Magic
To show what P/M Magic can do,
this article includes three demon-
stration programs. Before you can
use any of them, you must type in
Program 1 and LIST it to disk or
tape. This program is a loader
which puts all of the P/M Magic
machine language routines in
memory. It's important to use LIST
instead of SAVE when saving Pro-
gram 1, because you will later need
to use ENTER to merge it with the
three demonstration programs.
Don't try to run Program 1; it isn't
designed to be a stand-alone pro-
gram— it's a subroutine to load the
P/M Magic routines into memory.
After you enter Program 1 and
LIST it to disk, tj'pe in and save
Programs 2-4. The lines from Pro-
gram 1 must be merged with each
of these programs in order for them
to work. Thus, to run Program 2,
you would load Program 2, then
ENTER Program 1 to merge its code
with the program lines already in
memory. When that step is com-
plete, run the program. For ex-
ample, if you saved Program 2 on
disk with the name DEMOl and
Program 1 with the name PMMA-
GIC, then the steps for running
Program 2 would be as follows:
LOAD "D:DEM01"
ENTER "D:FMMAGIC"
RUN
The same process is used for Pro-
grams 3 and 4. If you like, the com-
plete, merged versions of Programs
2-4 can be saved for future use.
This will eliminate the step of hav-
ing to ENTER the lines from Pro-
gram 1 each time.
We'll discuss each demonstra-
tion program in detail later in this
article. In order to understand them
fully, however, you should first
note a few facts about the way that
P/M Magic uses the computer's
memory. This information is vital if
you wish to use this utility in your
own programs.
Memory Management
As noted earlier, P/M Magic works
in the background, allowing you to
run BASIC programs while it is ac-
tive. To communicate with P/M
Magic, you must place information
somewhere in memory where the
utility can find it. P/M Magic uses
most of memory page 6 (locations
1536-1699) for this communica-
tion. By PEEKing or POKEing cer-
tain locations in page 6, you can tell
P/M Magic exactly what you want
done. The locations and their usage
are detailed in Figure 1 and in the
table.
P/M Magic resides at the high
end of RAM and requires 4K (4096
bytes) of memory. To protect this
memory area, you should perform
POKE 106,PEHK(106)-16 before
POKEing the machine language
into memory. That statement
moves the computer's RAMTOP
pointer 4K lower in memory, mak-
ing the computer think it has 4K of
memory less than it actually has.
As shown in Figure 1, this 4K
memory block will hold three
60 COMPUTEI July 1 987
Figure 1: P/M Magic Memory Usage
Frames— 1280 Bytes 1-Line
1920 Bytes 2-Line
OLD
RAMTOP
NEW
RAMTOP
HIGHER MEMORY
+4 pages
+ 8 pages
P/M RAM (IK) 2-Line Resolution
P/M-Magic Program
P/M RAM (2K) 1-Line Resolution
things: the P/M Magic machine
language program itself, data
which the program uses for player
animation, and P/M RAM. The
program itself occupies about 1,5K
and starts at the beginning of the 4K
block. The animation data area be-
gins 1.5K higher in memory (point
A in Figure 1). The amount of mem-
ory available in this zone depends
on the P/M resolution, which is
1280 bytes for one-line resolution
and 1920 bytes for two-line resolu-
tion. The P/M RAM area starts at
either point B or C, using eight 2K
for one-line resolution and IK
pages for two-line resolution. Since
a certain amount of P/M RAM is
unused (the first 384-768 bytes, de-
pending on resolution), it is used
for animation data storage.
Running The Demos
With that information in mind, let's
examine the demonstration pro-
grams. Note that all of them begin
Important Memory Locations
1536 Player 0 animation; POKE with frame
number
1537 Player 1 animation
1540 POKE with 1 to disable Missile 0
1541 POKE with 1 to disable Missile 1
1542 Missile O's X offset from Player 0
1543 Missile O's Y offset from Player 0
1544 Missile I's X offset from Player 1
1545 Missile I's Y offset from Player 1
1546-47 Player O's left limit; Player O's left
limit plus 1
1548-49 Player O's right limit
1550-51 Player O's top limit
1552-53 Player O's bottom limit
1554-55 Player I's left limit
1556-57 Player I's right limit
1558-59 Player I's top limit
1560-61 Player I's bottom limit
1562-63 both missiles' left limit
1564-65 both missiles' right limit
1566-67 both missiles' top limit
1568-69 both missiles' bottom limit
1570 POKE with 1 to allow Player 1 to be
program-controlled
1587 X position of Player 0
1588 Y position of Player 0
1589 X position of Player 1
1590 y position of Player 1
1591 X position of Missile 0
1592 y position of Missile 0
1593 X position of Missile 1
1594 y position of Missile 1
1600 Player I's change in X position; use
when under program control (POKE
with 0, I, 2, 3, 255, 254, or 253)
1601 Player I's change in Y position
1610-1625 players' horizontal speed
1626-1641 players' vertical speed
1642-1657 missiles' horizontal speed
1658-1673 missiles' vertical speed
1674 POKE with 1 to stop Player 0
1684 Missile 0 to Playfield 0; collisions—
POKE with 1 lo enable
1685 MO to PF 1
1686 MO to PF 2
1687 MO to PF 3
1688 Ml to PF 0
1689 Ml to PF 1
1690 Ml to PF 2
1691 Ml to PF 3
1692 MO to Player 0
1693 MO to PI
1694 MO to P2
1695 MO to P3
1696 Ml to PO
1697 Ml to PI
1698 Ml to P2
1699 Ml to P3
1744 POKE with 1 to disable P/M Magic
by performing some setup tasks.
The screen appears blank during
this process, which takes about one
minute.
Program 2 demonstrates sever-
al basic features of P/M Magic.
After a delay of about one minute, it
displays a helicopter-shaped player
on the screen, complete with a real-
istic shadow. Plug a joystick into
port 1, and you will be able to move
the helicopter in any of eight direc-
tions (up, up and left, left, and so
on). Notice that the helicopter has
definite horizontal and vertical lim-
its; when you reach the edge of the
screen, it simply stops moving.
Line 10 of Program 2 reserves
4K of memory for the purposes ex-
plained above. In line 20, RAMTOP
is the first address of our reserved
4K block, which is used to call the
P/M Magic machine code. Lines 30
and 40 both compute the address
where P/M RAM begins and POKE
it into the P/M hardware register,
telling the computer where that
zone is located. Lines 60 and 62
compute the address where our
P/M data begins.
Lines 70 and 75 set up a
GRAPHICS 0 screen and temporar-
ily turn off the screen to make the
computer run a bit faster. Note that
you always should perform a
GRAPHICS statement after modi-
fying the RAMTOP pointer (as in
line 10); that action causes the com-
puter to set up its display list and
screen below the new location of
RAMTOP, protecting your reserved
memory area.
July 1987 CQMPUTEI 61
Figure 2: Player Data
128 ~
Bit »
Data For Each
Bit Turned On
Data
248
3Z
J.14
189
■
242
36
80
IZB
224
B
B
B
14
y Bytes
Tall
1 Byte Mide
Line 80 calls the subroutine
that POKES the P/M data into the
area defined in line 62. In this case,
each DATA line containing the
P/M data consists of 14 numbers,
which contain pixel data for each of
the 14 lines in the player shape (see
Figure 2).
This particular player is 14
bytes tall, so each 14 -item DATA
line represents an entire player
shape. Once these shapes have
been stored in memory, we can dis-
play any shape at will, or flip
through an entire series for anima-
tion. In effect, each 14 -byte data set
is one "frame" of an animated se-
ries. To switch to a new shape,
POKE its frame number into loca-
tion 1536 (for player 0) or 1537 (for
player 1). Frame numbers corre-
spond to the position of the data
sets in memory. For instance, the
data in lines 9010, 9020, and 9030
represents frames 0, 1, and 2, re-
spectively, and so on. Frame 0 (in
line 9010) contains all zero values;
it can be used to erase either player.
Notice that every player data
set must have a "cushion" of two
extra zeros both at the top and at
the bottom of the shape (see Figure
2). This cushion is counted as part
of the player's height and is neces-
sary for P/M Magic to function.
Line 90 of Program 2 calls a
routine that POKEs some important
information into the page six stor-
age area (Figure 1). P/M Magic al-
lows you to set horizontal and
vertical movement limits for both
players and missiles. Locations
1546-1569 contain these limits, but
you'll notice that two locations are
provided for each limit. Simply
make the second number one larger
than the first, as shown in line
10010. Horizontal limits can be
anything in the range 0-228, while
vertical limits can range from 0-191
for one-line resolution or 0-95 for
two-line resolution. The extreme
upper left comer of the screen is
represented by coordinate 0,0.
Locations 1610-1673 deter-
mine player and missile speed, and
are divided into four 16-byte sec-
tions. To change the speed of any of
these sections, simply change the
values they contain. Two speeds
are possible. For normal speed, the
sections should contain 0, 1, and
255 values in the order shown in
lines 10040-10060 of Program 2.
For fast speed, change every 1 in
those lines to 2, and change every
255 to 254 (leave the 0 values
unchanged).
Line 100 calls the routine (from
Program 1) that POKEs the P/M
machine code into memory. Line
120 disables missiles 0 and 1 and
sets the colors for player 0 and the
background. Line 122 turns on
players and missiles and clears the
P/M Magic disable flag. Line 123
clears all of P/M RAM and then,
since the setup is complete, turns
the screen back on.
At this point, we are ready to
enable P/M Magic, a task that is
done with USR. Here is the general
form for the USR statement:
X = USR(RAMTOP,POX,POY,P1X,P1Y,
HEIGHT,FL A G,RESOLUTION)
Here is an explanation of the
values you must supply in the USR
statement:
RAMTOF
start address of P/M
Magic
POX
X position of player 0
POY
y position of player 0
FIX
X position of player 1
PlY
Y position of player 1
HEIGHT
height of taller player; add
zeroes to bring the shorter
player up to this height
FLAG
set flag to allow one joy-
stick to control two
players
RESOLUTION
1 for one-line, 2 for two-
line
Once P/M Magic is enabled, a
number of interesting effects are
possible. For instance, the first two
62 COMPUTEI July 1987
demonstration programs take ad-
vantage of the feature that lets you
control two players with one joy-
stick. In the first example, the play-
ers are arranged vertically to create
a shadow under the helicopter. In
the second case, the players are
placed side by side to create an
extra-vride walking figure. By over-
lapping two players, you can create
the appearance of a player with
three colors.
Locations 1562-1569 define
the limits of a missile's travel.
When it exceeds these bounds, it is
reset automatically. Locations
1542-1545 define the missiles' off-
sets from their respective players;
when a missile is unfired, these off-
sets center a nussile underneath its
player, making it invisible.
The final demonstration pro-
gram moves player 1 under pro-
gram control. Locations 1600-1601
control the player's speed and di-
rection, using the same scheme de-
scribed earlier for locations
1610-1673.
Location 1693 is used to detect
collisions between missile 0 and
player 1. To enable detection,
POKE a 1 into this address. When
this type of collision occurs, P/M
Magic first checks location 1693 to
see whether detection is enabled,
then resets the missile and stores a
zero in the same location. After de-
tecting a collision — with PEEK
(1693) — you should store a 1 in this
address as soon as you want to
detect collisions again.
Avoid using the GRAPHICS
statement or executing PRINT
"{CLEAR}", or the equivalent
PRINT CHR$(125), after P/M Mag-
ic is enabled. Any of these activities
can clear the RAM above the RAM-
TOP pointer, where P/M Magic re-
sides. If you must perform one of
those commands, disable P/M Mag-
ic with POKE 1744,1; then reinstall
the P/M Magic machine code and
activate it with USR.
For instructions on entering these programs,
please refer fo "COMPUTEI's Guide to Typing
In Programs" elsewhere In this Issue.
Program 1 : P/M Magic Loader
CF 20000 R£I1 t«« P/M MAGIC t
«««««ttl«
110 20001 REM COPYRIBHT 19B7
COMPUTE! PUBLICATIO
NS, INC ALL RIBHTS
RESERVED.
Ml 20010 FOR A-RAMTOP TO RAM
CE 20020
AK 20030
PK 20040
I 200S0
LP 20060
At 20070
PC 200B0
KH 20070
El 20100
D£ 201 10
IE 20120
W 20130
Nil 20140
)E 201S0
SH 20160
DC 20170
HK 20180
n 20170
TOP -t- 1 35 e I READ BiPQK
E A,BiNEXT A
DATA 216, 104, 104, 10
4, 141,51,6, 10?, 6, 6,
141,53,6, 104, 104, 14
1,52,6, 107,7,6, 141,
56,6, 104
DATA 104, 141 ,53,6, 1
07, B,6, 141,57,6, 104
, 104, 141 , 54,6, 107,7
,6, 141, SB, 6, 104, 104
, 141,59
DATA 6, 104, 104, 141,
61,6, 104, 104,201,2,
208. 31 . 165. 106.24. 1
05. 14. 133.204. 133.2
06, 133,223, 133,221
DATA 198,223,178,22
1, 169, 12S, 133,205, 1
33,222, 133,220, 169,
0, 133,203,240,33, 16
5, 106,24, 105, 13, 133
,206
DATA 133,204,133,22
3, 133,221, 178,223, 1
9B,223, 198,221, 198,
221, 178,204, 167,0, 1
33,203, 133,205, 133,
222, 133
DATA 220,160,0,185,
220,0, 153,204,6,200
, 172,4,208,245
DATA 166,106,160,15
4. 167.7.32.92.228. 1
69,64, 141, 14,212,76
,216
DATA 160,0,185,220,
0, 153,200,6,200, 172
,4,208, 245, 160,0, 18
5,204,6, 153,220,0,2
00, 192, 4,208,245
DATA 173,208,6,240,
13. 169. 233. 141.37.2
, 169,5, 141, 36,2,76,
9B,22B
DATA 174, 120,2, 189,
74, 6, 141 , 62
CC 20200
KB 20210
.141
DATA 65,6,173,50,6,
240,20, 173, 121,2,20
1,15, 208,61, 173,3,6
.240,56, 169,0, 141 , 3
0,6, 141
At 20330
An 20340
Dl 20350
K 20360
UK 20370
DATA 185,30,6,209,6
0,6.240, 14,200, 192,
4,208,243, 173,60,6,
141,58,6,24, 144,5, 1
69, 1, 141
DATA 3,6, 162,0, 173,
0,20S, 166,41, 1, 240,
July 1 987 COMPUTEI 63
le, 1B9, 148, 6,240, 13
, 20S, 49, 6,208,8, 141
.2,6
DATA 169,0
DATA 157,148,6,152,
74, 232,224, 4,208,22
6, 173, 1,206, 168,41 ,
Bit B FDR X
fi 10 POKE
FD 20S60
n 20570
JP 20SS0
DATA 3, 169
DATA 0, 141,S, 208, 16
9,0, 141,72,6, 141,73
,6,24S
DATA 160.0, 185, 220,
a 1 ^-T '7i
Program 2: Helicopter Demo
8CS PRINT " CCLEAR>CDPYRIBHT
19a7"iPRINT "COMPUTE!
PUBLICATIONS, INC."iPRI
NT "ALL RIBHTS RESERVED
FA 20550
PF 127
BL 130
BE B600
GH 9000
HA 9010
FL 9020
HC 9030
0[ 9040
KB 9050
1 TO 1000INEXT X
106,PEEKC106)-16
RAMTOP-PEEK(106) »256
A-PEEK( 106)+S
POKE 54279, A
PMBASE-At256
A>PEEK(106)+6
FRAMES-A«256
BRAPHICS 0
POKE 559,0
BOSUB 9000
BOSUB 10000
SOSUB 20000
POKE 1540,llPDKE 1341
, liPOKE 704, 14BI POKE
710, 0
POKE 53277,31 POKE 174
FOR R-PMBASE TO PMBA3
E+2047iPOKE R,0iNEXT
RiPOKE 559,62
X-USR(RAMTOP, 100, 100,
0,0, 14, 0, 1>
POKE 1536,1
END
REM >**** ANIMATION
DATA Ittttt*
FOR I-FRAMES TO FRftM
ES+69IREAD A: POKE I,
AiNEXT I
DATA 0,0,0,0,0,0,0,0
,0,0,0,0,0,0
DATA 0,0,31,4,78,189
,79,6, 10,30,7,0,0,0
DATA 0,0,4, 4, 142, 125
, 143, 6, 10, 30, 7, 0,0,0
DATA 0,0,248,32,114,
1B9, 242,96,80, 120,22
4,0,0,0
DATA 0,0,32,32.113,1
90,241,96, 80, 120,224
,0,0,0
U 9070
PN 9 1 00
AE t 0000
PA 10010
D! 10045
BH 10047
PP 10050
HI 10060
HI 10070
RETURN
REM titt
USAGE «
FOR A-1
READ Bi
T A
DATA 46
30, 31,2
, 206, 20
221,4
5, 26, 22
DATA 0,
0,0,0,0
DATA 0,
0,0,0,0
,0,0,0
REM PLA
DATA 0,
1 ,0,253
,0,0,0
4,0,0,2
DATA 25
0
REM MIS
DATA 0,
2,0,254
, 0, 0, 0,
DATA 0,
2,254,0
RETURN
PAGE 6 MEM.
t*tt
546 TO 1673;
POKE A,B:NEX
,47,2
,12,21
17, 38,
41,21
!5, 226
0,0,0
',12,1
0,0,0
I, 0,0,
0, 0,0
IYER SI
0,0,0
i,235,
0,0,0
04,205,
3, 4B, 49
39,220,
0,211,2
2,0,0,0
,0,0,0,
0,0,0,0
PEED
,0,1,1.
255, 0, 0
,0,2,25
4,0,0,2,254,
JSILE SPEED
,0,0,0, 0,2,2,
1,254,254,0,0
,0,0
0, 2, 254, 0, 0,
1,0,2, 254, 0
Program 3: Street Scene Demo
GC 5 PRINT " tCLEAR>COPYRIGHT
1987":PR1NT "COMPUTE!
PUBLICATIONS, INC."lPRI
NT "ALL RIGHTS RESERVED
GK 8 FOR X-1 TO 1000:NEXT X
PE 10 POKE 106,PEEKtl06) -16
RAMTDP-PEEK (106) 1256
A-PEEK<106) +8
POKE 54279, A
PMBASE-A*256
A-PEEK(106) +6
FRAMES-A«256
BRAPHICS 23SP0KE 559,0
POKE 53250, 120: POKE 53
251,120:POKE 53254,100
: POKE 53255, 140
POKE 623, 17! POKE 53277
,3tP0KE 53260, 96l POKE
54286,32
FOR I-PMBASE+0 TO PMB
A3E+2047iPOKE I,0iNEX
T I
FOR Yi-PMBft3E + 800 TO P
MBASE+BB9r POKE Y,240I
NEXT Y
FOR R-PMBASE+890 TO P
MBASE+946:P0KE R,192!
NEXT R
FOR T-PMBASE+169B TO
PMBASE+1707:READ AsPO
KE T,A«NEXT T
FOR X-PMBASE+1960 TO
PMBASE+1970!READ SsPO
KE X,3:NeXT X
DATA 16,56,124,124,25
4, 124, 16, 2, 3,2
DATA 108,124,124,124,
124, 124, 124, 124,254,5
6,0
FDR 1-704 TO 711jREAD
A: POKE I, A: NEXT I
DATA 84,84,14,236,22,
146, 152,2
K=140iL-100! J-212
DL-PEEK (560) +256*PEEK
(561 ]
DL82-DL+82: LBYTE»40
POKE DL+81, 77: POKE DL
+a2,40!POKE DL+B3,PEE
E8 20
FG 30
AL 40
GC 50
FC 60
GL 62
in 63
JO 90
DE 100
120
AF 130
m 150
NH 160
60 170
FL IB0
F6 190
IB 200
FK 210
He 220
EH 222
FC 224
64 COMPUTEI July 1987
DC 226
DF 228
A6 230
M 232
LC2 4a
EJ 260
K 290
m 300
HE 310
LB 320
nn 330
BJ 340
NK 330
BK 360
M370
U 380
AB390
93 400
W410
NK 4ia
N 420
BD 430
EB 7000
HB 8000
Ml 8010
n 8020
OC8030
m 8060
JF 8080
IC 8090
m 8100
HK 81 10
BD 8120
PB 8130
PFei40
HHeiS0
K (DL + !S) +12
GOSUB 8000
BOSUB 9000
BDSUB 10000
BDSUB 20000
POKE 1744,0jPDKE 1540
, 1 :PDKE 1341 , 1 i POKE S
5 9,42
X-USR (RAMTDP, 120, 180,
128, 180,26, 1,1)
REM tt«**» MAIN LOOP
t«t*tttttt«*
T-6:SPEED-6
FOR I-l TO 5 1 POKE 153
6,IiPaKE 1537,TlT-T+l
iIF PEEKt632>-ll THEN
3PEED-12
IF PEEK<632)-7 THEN 3
PEED-0
K-K-1:IF K-44 THEN K»
212
L-L-0.75iIF L<44 THEN
L-212
J-J-llIF J-44 THEN J-
212
FDR P-0 TO SPEEDlNEXT
P
POKE 53230, J t POKE 532
51 , J
POKE 53255, Kl POKE 532
34, L
LBYTE-LBYTE+0. 23l IF L
BYTE-50 THEN LBYTE-10
POKE DLBZ.LBYTE
IF PEEKf 1588 )< 181 THE
N POKE 623,24
IF PEEK ( 1388) >181 THE
N POKE 623, 17
NEXT I
GOTO 300
REM «««*« DRAW PLAYF
lELD >***«*
COLOR liPLOT 159,39:
DRflWTO 159,0eDRAWTO
0,0iPO9ITIDN 0,39lPD
KE 76S,1:XID 18, #6,0
,0, "St "
COLOR 3iPL0T 139, 47j
DRAWTD 159, 40iDRflWTO
0,401 POSITION 0,47i
POKE 765,3iXI0 18, »6
,0,0, "Si"
PLOT 139,931 DRflWTO 1
S9,6eiDRAMT0 0,6BiPO
SITION 0,95iXia ia,#
6,0,0, " S ! "
COLOR 2iPL0T 139, 51 i
DRflWTO 159,4BlDRAWTD
0,4B I POSITION 0,Sli
POKE 76S,2iXI0 18, «6
, 0 , 0 , " 3 I "
COLOR liW'l
FOR 1-1 TO 61PLOT 99
,79+IlDRAWTO 99+H,79
+Il W-W+21NEXT I
COLOR 2
FOR 1-0 TO 61 PLOT 73
,78 + 1 1 DRflWTO 98,78+1
I NEXT 1
COLOR 1
FOR 1-0 TO 24 STEP 4
:PLOT 73+1, B0I DRflWTO
75+I,84iNEXT I
FOR 1-0 TO 13 t READ A
,BiPLOT A,B+25tNEXT
I
FOR 1-0 TO SiREAD A,
B.CDjPLOT A,B+25iDR
AWTO C,D+23!NeXT I
DATA 77,38,77,56,76,
58, 78,56,85,36,83,58
,86, 57,86, 35,86, 39,8
9,39,93,36, 93,38,93,
Pf 10000
m 10005
js 1 00 1 0
Ml 10015
ON 10020
, i^a, 111,0
RETURN
REM »t««t PABE 6 MEM
. USASE «*•!
) FOR A-1546 TO 1641i
READ BiPOKE A.BcNEX
T A
,0,0,0,0,0,0,0,1,25
3,0, 0, 1
OF 10050 DATA 253,0,0,1,255,
0
NI 10070 RETURN
Program 4: Arcade Game
Demo
PRINT " tCLEARJCOPYRIBHT
19B7"tPRINT "COMPUTE!
PUBLICATIONS, INC."tPRI
NT "ALL RIGHTS RESERVED
OR X-1 T
POKE 106
RAMTOP-P
fl-PEEK( 1
POKE 542
PMBASE-A
fl-PEEK(l
FRAMES-fl
0RAPH1CS
0SPOKE 3
252,0iPa
7 J ■■ < 7 S
TARSETS
INPUT Qt
? J " 1 6 S
PEED (1
FsIF F>2
7
? ;"<5 S
2-DIFFI
I IF N>2
? I "te S
ILL BLAN
{11 SPAC
0 1000INEX'
.PEEK ( 106)
EEK(106} (2!
6) +8
79, A
• 256
06) +6
t256
1 1 POKE 53:
3249,0:POK!
KE 53253,0
PACES>HOW MANY
(T X
I -16
!S6
S248,
CE 53
IF B<1 THE
PACES>TARS
OR 2) " J ! IN
OR F<1 TH
N 66
ET S
PUT
EN 6
PACEB>1-EASY J
CULT"; s INPUT N
OR N< 1 THEN 68
PACES>3CREEN W
K":7 ;"
ES>TEMPORARILY'
KE 242
HP 243
DF 244
IB24S
IC 246
FOR T-1 TO 1300: NEXT T
GRAPHICS 1+16SSOUND 0,
0,0,0
POKE 359,0: POKE 623,49
:POKE 53277,3: POKE 332
56,liP0KE 53238, 0:PQKE
53239,0
FOR I"PMBflSE+0 TO PMB
ASE+2047SPQKE I,0:NEX
T I
POKE 704, 148: POKE 705
,68:P0KE 707,232iPOKE
706,66:POKE 708,152:
POKE 710, 146
POKE 1342,7:P0KE 1343
,6:P0KE 1744,0
FOR I-l TO 22 STEP 3:
X-RND(0) »6:POSITI0N X
,1:? ttA; "."
Z"RND<0) »6i POSITION 6
+Z, Ii? *6; ". ": Z-RN0(0
)*7!P0SITI0N 12+Z,I:7
#6; ". "
NEXT I : RESTORE
FOR T-0 TO 511 1 POKE 3
276B+T, PEEK(57344+T) :
NEXT T:POKE 756,128
FOR T-32768+24 TO 327
6B+47:READ B:POKE T,B
I NEXT T
DATA 0,0,0,0,0,0,112,
248, 124, 126, 127,255,2
55, 255, 255, 255,255,25
5,255, 255,255,255,255
,255
FOR T-0 TO 19iP08ITID
N T,21 : ? #6i "#"iNEXT
T: POSITION 0,22
FOR T-0 TO 19:? »6|"a
"I ! NEXT TlPOSITION 0,
23
FOR T-0 TO 19i7 »6t "B
" J :NEXT T
BOSUB 9000
July 1987 COMPinil 65
An 254 QQSUB 10000
AP 2S& GQ5UB 20000
Pn 260 POKE 1585, 0: X-USR (RAM
TOP, lie, 120, 10, 100, 14
,0, 1)
PF2B0 POKE 55'?,62!T-1 !M"2i A
B-0IMISS-0
09290 POKE 134a,0lPDKE 1570
, ItPOKE 1537, 1:P0KE 1
53A,3:PDKE 77,0
1IB2'?5 IF PEEK (5327'?} -6 THEN
302
BB300 IF PEEK (53279) -3 THEN
POKE 1744,lsPDKE 532
4B,0:PQKE 53249, BtBOT
□ 64
PJ301 POKE 1600,0sQOTO 295
DL 302 POKE 1600,FtPOKE 1601
, IsPOKE 1693, 1; IF N-1
THEN POKE 1601,0
NH 303 REM tttt*t MAIN LOOP
t(»«t«t»t>tt
CF 304 e-STICK (0) I IF E<B THE
N POKE 1536,T+4lM-4ia
DTO 310
EI 306 IF E<12 THEN POKE 153
6,T+2lM-2lQOT0 310
JB30B POKE 1536, T+M
1!D310 POKE 1537, Tl IF PEEK < 1
693>-0 THEN POKE 1693
, ItOOSUB 9010
m 320 IF PEEK(53260)-2 THEN
POKE 1540, It GOTO ab«
IF PEEK( 1390) >190 THE
N POKE 1601,255
IP 360 IF PEEK(1590)<3a THEN
POKE 1601,1
T-T+llIF T-3 THEN T- 1
IF PEEK (1S89) >240 THE
N MIS3-MISS+1 ;flB-flB+l
K 350
FL 390
CA 400
:PDKE 1589, 101 IF AB-B
THEN POP lOOTO 500
BH430 QOTO 304
m 440 REM ttttt SAME OVER «
tt*ttt*t*tt«
Ft 500 POKE 1537,llPQKE 1S36
,M+1
OE 505 POSITION 5,0iZX-((B-M
ISS) /G) *100:? tt6;INT(
ZX) 1 I? #6} " PERCENT-
PC 510 POKE 1744,1
0S52(» IF PEEK (53279) -6 THEN
540
B6 530 IF PEEK (53279) -3 THEN
POKE 1744, IsPOKE 532
4B,0iPOKE 53249, 0IQOT
D 64
SNS35 OOTO 520
« 540 POKE 53248, 01 POKE 532
49,0;POKE 53252, 0iPOK
E 53253, 0:POKE 1744,0
iPOSITIDN 5,0! 7 #6| "
C14 SPACES}"
HP 550 FOR T-PMBASE+76B TO P
MBASE+1335lP0KE T,»cN
EXT TiSQTO 260
KO B000 REM *» TARSET EXPL03
ION tt»««i>
Jn8010 POKE 1536, 1+M
EAa015 FOR Z-7 TO 1 1 J POKE 1
537,Z:S0UND 0.200,8,
22-Zt2:FOR I-l TO 10
:NEXT IiNEXT Z
68 8020 SOUND 0, 0, 0, 0 : AB>AB-t-
1 ! IF AB-B THEN POP :
GOTO 500
KH 8030 POKE 1337,01 IF N-2 T
HEN B040
EH 8032 L-PEEK (33770) : IF L<3
0 OR L>190 THEN 8032
EF B034 POKE 1390, L
Attention all FX80, FXlOO, JX, RX, & MX owners:
You already own half of
a great printer
Now
Onl
Now for S79.95 you can own
the rest. Yott see, today's new dot
matrix printers offer a lot more.
Like an NLQ mode that makes
their letters print almost as shaipas
a daisy wheel. And mode switch-
ing at the touch of a button in over
160 styles. But now, a Dots-Perfect
upgrade kit will make your printer
work like the new models in min-
utes— at a fraction of their cost.
And FX, JX and MX models will
print the IBM character set, too
So, call now and use your Visa,
MasterCard, or AmerEx. Don't
replace your printer, upgrade it!
1-800-368-7737
(Anywhere in the United States or Canada)
g iS-I (Dots-Fterfect^
^Dr esselhaus
8S60 Vineyard Ave., Ste. 405. Rancho Cucamorsga. CA 91730
An upgrade kit for EPSON FX, JX, RX, & MX printers
Sample of
letter without
Dots- Perfect
g
(714)945-5600
PFkey 64
// you're a 64 programmer, or a 128
programmer who feels a little lost
when you switch modes, this compre-
hensive utility is well worth adding to
your library. "PFkey 64" makes many
128-specific features available when
you are using BASIC 2.0 on the Com-
modore 64.
It's no secret that the Commodore
128's BASIC 7.0 is one of the most
powerful BASICS available on any
microcomputer. But the Commo-
dore 64 is still very popular, and
many 128 owners spend a signifi-
cant amount of time computing in
64 mode. "PFkey 64" allows you to
use many BASIC 7.0 features on the
Commodore 64, including pro-
grammable function keys, reserved
variables, disk drive commands,
special functions, and a number of
BASIC 7.0 utility commands.
PFkey 64 is written entirely in
machine language, so you'll need to
use "MLX," the entry program
found elsewhere in this issue, to
type it in. Please read all of the
instructions for using MLX before
you get started. You must make one
temporary change to MLX before
you begin entering the data for
PFkey 64. MLX does not normally
permit the entry of data at address-
es which correspond to BASIC or
Kernal ROM. However, a portion of
PFkey 64 is designed to reside in
RAM beneath BASIC ROM. Thus,
you must disable MLX's address
error-checking feature before you
begin entering data. (If you don't,
you'll get an error message when
Jeffrey D, Partch
you try to begin entry.) To turn off
the address testing, place a REM
before the first statement in line 1040
of the MLX program. This is just a
temporary patch for entering the
PFkey 64 data; do not make this a
permanant change to MLX.
When you first run the modi-
fied MLX program, you will be
asked for starting and ending ad-
dresses for the data you'll be enter-
ing. For PFkey 64, respond with the
following values:
starting address: BF40
Ending address: CFFF
After you've entered all the
data for PFkey 64 and have saved a
copy, you can load it into memory
at any time. (BASIC programs cur-
rently in memory will be pre-
served.) Use the syntax LOAD
"PFKEY",8,1 for disk or LOAD
"PFKEY", 1,1 for tape. (If you saved
the program with some other file-
name, use that name in place of
PFKEY.) To activate PFkey 64, sim-
ply type SYS 49152.
PFkey provides several kinds
of enhancements to Commodore 64
BASIC: new commands, new re-
served variables, new functions,
and new DOS commands. Like oth-
er BASIC keywords, these can be
typed in abbreviated form; see the
table accompanying this article.
Here is an explanation of each
group of BASIC enhancements.
Utility Commands
QUIT. This command disables
PFkey 64 and reclaims the memory
previously occupied by the PFkey
code. It works in both program
mode and direct mode. You should
always use this command before
loading another machine language
program that occupies the same
memory area as PFkey 64 (see
"Program Notes" below). To restart
PFkey 64, you must reload the pro-
gram and use a SYS as described
above.
BANK. The BANK command
allows you to PEEK and POKE
memory areas that are normally
hidden from BASIC. This is done in
part because PFkey itself occupies a
substantial amount of the 64's
memory; making other memory
areas available compensates for the
loss to some extent. BANK must be
followed by a number in the range
0-4. For instance, BANK 0 resets
the 64 to its normal memory config-
uration. Here is an explanation of
all the BANK commands.
• BANK 0 is the normal config-
uration. This configuration is reset
whenever the computer enters di-
rect mode (when the READY
prompt reappears after you exit a
program, for instance).
• BANK 1 allows you to PEEK
values stored in the RAM underly-
ing the BASIC ROM (Read Only
Memory) chip at locations
40960-49151.
• BANK 2 allows you to PEEK
values stored in the RAM underly-
ing the Kernal ROM at locations
57344-65535.
• BANK 3 affects only the
POKE command, and allows you to
POKE into areas used by PFkey
itself. (See "Program Notes," be-
low.) You should rarely, if ever.
July 1987 COMPOTEI 67
have to do this, but the capability is
there for advanced programmers.
• BANK 4 allows you to read
the character shape data stored in
ROM at locations 53248-57343.
SYS. Although it is not a new
command, SYS has been modified
to work as it does in BASIC 7.0. If
you supply additional values after
the address parameter, SYS stores
those values in the processor's in-
ternal registers. Here is the syntax
to use:
SYS address. A, X, Y, status
The last four parameters are
optional and can be used to store
values in the A register, X register,
Y register, and status register, re-
spectively. This assumes, of course,
that you are calling a machine lan-
guage program that expects those
registers to contain certain values.
The SYS command accepts any
number or numeric variable in the
range 0-255 for these parameters.
It's not necessary to supply values
for all parameters, but to specify a
value for any parameter, you must
supply values for all preceding
ones. For example, if you wish to
supply a value for the Y register,
you must also provide values for
the A-register and X-register pa-
rameters, but it is not necessary to
provide a value for the status
register.
RREG. The RREG (Read REG-
isters) command returns the values
of the processor's internal registers.
One use for this command is to pass
information from a machine lan-
guage routine back to BASIC. The
registers are read in the same order
as that used for SYS. (See above.)
Here is the basic syntax:
RREG vailt var2, var3, var4
You can use any numeric vari-
able for the four parameters. For
instance, the command RREG AR,
XR, YR, SR assigns the contents of
the A, X, Y, and status registers to
the variables AR, XR, YR, and SR,
respectively.
KEY. This is one of the most
versatile and useful commands pro-
vided by PFkey 64, With it, you can
assign commands to any of the
computer's function keys. As on the
128, default commands are as-
signed when you first run PFkey.
To display a list of the current func-
tion-key assignments, type KEY
and press RETURN without typing
anything else. You also can create
your own function-key assign-
ments, using this general syntax:
KEY number, commands
The number parameter tells
PFkey which function key to de-
fine; this must be a value in the
range 1-8. The commands parame-
ter must be a string containing the
command or commands you wish
to assign to that function key. For
instance, say that you want func-
tion key fl to execute these com-
mands each time you press it:
PRINT CHR$(147);LIST
The first command prints a
CLR/HOME character, which
clears the screen, and the second
lists the program in memory. These
commands assign this definition to
the fl key:
A$='TRINT CHRSa47):LIST" -I- CHR$
(13)
KEY 1, AS
Note that we added a carriage
return (character 13) to the end of
the command string A$. This
causes the computer to "press RE-
TURN" at the end of the command.
In some cases, you might not want
a carriage return; for example, in a
load command, you might want the
computer to first print LOAD fol-
lowed by one set of quotation
marks, and then to allow you to
type in the rest.
You can use the CHR$ func-
tion to include any nonprinting
characters, such as quotation
marks, in the command string. The
command string can be a single
BASIC statement or several BASIC
statements. However, BASIC itself
limits the length of an input line to
80 characters, so you should not
attempt to create a function-key
definition longer than that.
DELETE. This command de-
letes a single program line or a
range of program lines. Here are
two simple examples;
DELETE 100
DELETE 100-200
The first command deletes line
100 from the program in memory.
The second command deletes every
line from 100 to 200, inclusively.
This command works only in direct
mode (when you're not running a
program) and does not accept nu-
meric variables in place of line
numbers. You must always specify
two line numbers for a range (for
example, DELETE —100 is invalid),
and the command does not work
unless both line numbers in the
specified range exist.
HELP. This command pro-
vides a shortcut for locating pro-
gram errors. When a program stops
with an error, type HELP and press
RETURN. PFkey 64 lists the line
where the error occurred and high-
lights the erroneous statement in
reverse video. (In a few cases, the
statement which generates the er-
ror is not itself wrong. For example,
while it READs values from DATA
statements and POKEs the values
into memory, a program might stop
with an ILLEGAL QUANTITY er-
ror in the line that contains the
POKE. But the illegal quantity is
actually contained in the DATA
value which the computer was
reading at the time.)
AUTO. The AUTO command
eliminates the drudgery of typing
line numbers by hand as you enter
a program. To turn on automatic
line numbering, type AUTO fol-
lowed by an increment value in the
range 1-63999. As soon as you
press RETURN at the end of a pro-
gram line the computer automati-
cally types the next line number.
For instance, this command causes
the computer to print line numbers
in increments of 10:
AUTO 10
If you execute a direct-mode
statement, or press RETURN on a
blank line, the computer suspends
automatic numbering until you en-
ter another program line. Automat-
ic line numbering is turned off if
you type AUTO and press RE-
TURN without typing anything
else, or when you run any program.
RENUMBER. This command
renumbers the BASIC program in
memory. It can be used in two dif-
ferent ways. If you simply type RE-
NUMBER and press RETURN,
PFkey renumbers the first line of
the program as line 10 and renum-
bers all remaining lines in incre-
ments of 10 (the second line is 20,
the third is 30, and so on). You can
also specify the initial line value,
the increment, and the line on
which to start renumbering. Here is
the general syntax:
RENUMBER newline, increment, oldline
68 COMPUTEI July 1987
For instance, this command
tells PFkey to start at existing line
200, renumbering that line with the
new number 1000, and numbering
all successive lines in increments of
20:
RENUMBER lOOO, 20, 200
The RENUMBER command
operates only in direct mode and
does not accept variables in place of
its parameters. This command re-
numbers all internal references pre-
ceded by GOSUB, TRAP, RESUME,
RUN, THEN, GOTO, GO TO (as
two keywords), and ON GOTO.
RENUMBER stops without harm-
ing the program if the renumbering
would create a reference to a non-
existent line, create a line number
higher than the legal limit (63999),
corrupt the chronological order of
program lines, duplicate an existing
line number, or create a program
too large for PFkey's n-iemory.
TRAP, RESUME. These close-
ly-related commands allow you to
respond to many BASIC errors that
would otherwise cause a program
to stop.
TRAP permits you to regain
control of the computer when a
BASIC error would normally cause
execution to cease. TRAP must be
followed by the number of the pro-
gram line where you want to
branch when a BASIC error occurs.
For instance, the statement TRAP
5000 causes the computer to branch
to line 5000 whenever any error
occurs. At line 5000, you would
place the routine that takes whatev-
er action is necessary to correct or
respond to the error.
The RESUME command al-
lows you to reenter the main pro-
gram after executing a TRAP
routine. This command can take
either of two forms:
RESUME NEXT
RESUME linenumber
The command RESUME NEXT
causes the computer to resume exe-
cution at the statement immediate-
ly after the one which triggered the
error. You ordinarily would use this
syntax for errors that can be cured
completely by the TRAP routine.
The second form of trap allows you
to branch to the line specified by
linenumber. This option is appropri-
ate for more serious situations — for
instance, when an error requires
that you terminate the program
completely or restart it, rather than
continue where the program left
off.
Both TRAP and RESUME are
valid only in program mode, and
neither command accepts variables
as line numbers or nonexistent line
numbers. Keep in mind that TRAP
and RESUME turn each other off. In
other words, TRAP is not reinstated
automatically after a RESUME; if
you wish to turn error trapping back
on after RESUME, you must do so
with a second TRAP statement.
Similarly, RESUME is invalid unless
a TRAP is in effect; executing RE-
SUME before you perform TRAP, or
executing two RESUMES in a row,
causes an error.
TRAP and RESUME are very
useful for catching errors, particular-
ly in programs designed for begin-
ners or unsophisticated computer
users. However, most programmers
wait until a program is finished and
debugged before inserting TRAPs.
In that way, you can prevent a
TRAP from confusing you, the pro-
grammer, unnecessarily.
TRON, TROFF. This pair of
related commands turns trace mode
on and off. TRON (TRace ON)
turns the trace feature on, while
TROFF (TRace OFF) disables it.
Neither command accepts any pa-
rameters. When a program is run-
ning in trace mode, the current line
number is listed just prior to the
execution of each new statement.
Although there are limitations to
this method^ — the trace display oc-
cupies the same screen that may be
used for your program's output,
and may not be visible at all if the
computer is not in text mode — this
feature can be quite useful if you
suspect a problem with a program's
logic.
Reserved Variables
PFkey 64 provides you with four
reserved variables taken from
BASIC 7.0. You already may be
familiar with ST, TI, and TI$, which
are reserved variables in BASIC 2.0.
Reserved variables are set aside for
the computer's own use and cannot
be assigned a new value with LET,
GET, or any other BASIC assign-
ment statements. Keep in mind,
however, that this limitation ap-
plies only to variables of the same
type. For example, although the
floating-point variable EL is re-
served (see below), you can still use
the string variable EL$, the integer
variable EL%, and so on, because
BASIC can distinguish those vari-
ables on the basis of their types.
All of the new reserved vari-
ables are reset to their default (nor-
mal) values after you execute a CLR
command, or perform any action
that edits a program. Here is a list of
the reserved variables:
EL, ER. These two numeric
variables are particularly useful in
TRAP-handling routines. EL (Error
Line) stores the number of the pro-
gram line where the most recent
BASIC error occurred, and ER (ER-
ror number) holds the error number
for the most recent error.
DS, DS$. This pair of reserved
variables holds information about
disk operations. The string variable
DS$ holds the text of the most re-
cent error message from the disk
drive command channel, while the
numeric variable DS holds the error
number for the most recent disk
error. The next time the error light
starts to blink on your drive, try
typing PRINT DS,DS$ and pressing
RETURN. If DS equals 0, and DS$
prints OK, the drive's status is
normal.
Functions
Like all BASIC functions, the new
functions provided by PFkey 64 re-
quire some additional information
inside parentheses.
HEX$. This function converts
decimal (base 10) numeric values
into their hexadecimal (base 16)
equivalent. The number inside pa-
rentheses must be in the range
0-65535. For instance, the state-
ment PRINT HEX$(255) yields
OOFF. Note that the result is re-
turned as a string four characters
long; after you execute X$ = HEX
$(254), the stiing X$ contains the
four-character string OOFE.
DEC. The DEC function does
the opposite of HEX$, converting a
hexadecimal string into a decimal
numeric value. Again, the value
must be in the range 0-65535. DEC
accepts either string variables or lit-
eral strings. For instance, after you
execute the statement X = DEC
("FF"), the numeric variable X
holds the value 255. You do not
July 1987 COMPUTE1 69
need to supply leading zeros for a
hex number of less than four digits;
for example, DEC("FE") works just
as well as DEC("OOFE").
ERR$. The ERR$ function
prints the text of BASIC error mes-
sages. It is especially useful in con-
junction with the reserved variable
EL and the commands TRAP and
RESUME, (See above.) You must
supply ERRS with a numeric value
in the range 1-31 (error 34 is also
valid). A typical use of this function
is to display error messages from
within a trap routine. To demon-
strate this function, enter NEW in
direct mode, followed by NEXT;
then enter this line in direct mode:
PRINT ER, ERR$(ER)
POINTER. The POINTER
function expects you to supply the
name of a variable used in the cur-
rent program. It returns the memo-
ry address where that variable's
descriptor can be found. For in-
stance, the statement ADDR-
= POINTER(X) assigns to the
variable ADDR the address of the
variable X's descriptor. This func-
tion is useful primarily to advanced
programmers who wish to examine
how a particular variable is stored
internally. If the variable has not
yet been used, POINTER returns a
zero. The variable's name is located
in the two bytes immediately pre-
ceding the returned address. Be
careful when using array variables,
because this function creates a new,
single-dimension, 11-element array
if you have not previously per-
formed DIM. Dan Heeb's book Tool
Kit: BASIC (available from COM-
PUTE! Books), contains a detailed
description of the structure of
BASIC variable descriptors,
XOR. This function requires
two numeric values in its parenthe-
ses. It performs an exclusive OR
operation on the bits of the first
value, using the bits in the second
value. Both values must be in the
range 0-65535. For instance, the
statement PRINT XOR(l,255)
yields 254.
DOS commands
PFkey supplies several new com-
mands which simplify the use of a
floppy disk drive. These differ from
the commands available in BASIC
7.0 because no provision is made
for a double disk drive (two disk
drives in one case, which are ad-
dressed as drive 0 and drive 1). All
of the current Commodore disk
drives— the 1541 and 1571— are
single drive units which are ad-
dressed as drive 0.
The allowable range of device
numbers for these commands is
from 8 to 31. The normal device
number for a single Commodore
drive is 8. The default drive is the
last device used in the current ses-
sion; if for some reason that num-
ber falls outside the range 8-31, it is
reset to 8, the normal device num-
ber for a Commodore disk drive.
Every DOS command can be
used in two forms. If your drive is
device 8 (the usual situation), sim-
ply enter the command, followed
by whatever information is indicat-
ed in the explanation for that com-
mand. If you have more than one
drive, you can access the second
drive (which will have a different
device number) by adding ,U and a
device number to the end of the
command. For instance, the normal
syntax for the DIRECTORY com-
mand is to type DIRECTORY and
press RETURN. However, you
would use the command DIREC-
TORY,U9 to get a directory of the
disk in device 9. This optional syn-
tax can be used with all DOS
commands.
All of these commands open
the disk drive command channel
(channel 15) during execution and
close it when they finish. Thus, you
always must close the command
channel (15) before using any of
these DOS commands.
In direct mode (when you are
not running a program) all DOS
commands that would alter the
contents of a disk require confirma-
tion before the command is carried
out; the computer prints ARE YOU
SURE? and does not carry out the
command unless you press Y and
then press RETURN. If you have
more than one drive in your system
(for instance, one which is device 8
and another which is device 9), it is
strongly suggested that you include
the device number wherever appro-
priate.
DIRECTORY. If you learn
only one DOS command, this
should be the one. DIRECTORY
lists the directory of the current disk
in the specified drive, without alter-
ing the program in memory. In oth-
er words, you no longer have to use
the familiar LOAD "$0",8 com-
mand to view the directory.
COLLECT. This command re-
covers disk sectors which have
been temporarily lost as a result of
repeatedly scratching and resaving
files. (This operation is also called
validation.) You should perform an
immediate COLLECT whenever you
discover an unclosed (splat) file on
a disk, which is signaled by an as-
terisk (*) next to the filename in the
disk directory.
SCRATCH. This command
erases the specified file or files from
a disk. For instance, SCRATCH
"TEST" removes the file TEST from
the current disk. This command ac-
cepts variables in place of literal
strings; for instance, both of these
commands accomplish the same
thing:
SCRATCH "TEST"
A$ = TEST:SCRATCH A$
You can also use wild-card
characters to scratch more than one
file. For instance, SCRATCH
"TEST*" deletes the files TESTFILE,
TESTER, and any other file begin-
ning with the characters TEST, The
disk drive manual contains more
information about DOS wild cards.
Do ywt use SCRATCH on any disk
that contains an unclosed (splat) file;
use COLLECT (see above) on the
disk immediately.
RENAME. The RENAME
command changes the name of an
existing file. For instance, this com-
mand renames the existing file
OLDFILE with the rrew name
NEWFILE:
RENAME "OLDFILE" TO "NEWFILE"
The contents of the file are not
changed by RENAME.
COPY. This command creates
a duplicate of an existing file on the
same disk. The original file is left
unchanged. For instance, this com-
mand creates a new copy of the
existing file TEST, naming the new
file COPYOFTEST:
COPY "TEST" TO "COPYOFTEST"
DCLEAR. The DCLEAR com-
mand closes all open files and
channels on the specified drive.
The drive is reset to its power-on
state, and the current disk is initial-
ized. It's a good idea to enter this
command every time you perform a
?0 COMPUTEI July 1987
disk swap, to make sure the drive
knows it's dealing with a different
disk.
HEADER. This command for-
mats a disk. Before using a new disk
for the first time, you must format it
to mark off storage zones for the
drive to use. The HEADER com-
mand can take two forms. Use this
syntax if you are formatting a disk
that has never been used before:
HEADER "mme",id
The name inside quotes must
be no more than 16 characters in
length. The disk ID can be any two
characters; it is important that every
disk have a unique ID. For instance,
this command formats a new disk
with the name WORKDISK, giving
it WD as a disk ID:
HEADER "WORKDISK",WD
If you are formatting a previ-
ously formatted disk (for instance,
to erase its contents), you can omit
the ID from the command. This
command removes all the files from
a previously formatted disk, giving
it the name MYDISK:
HEADER "MYDISK"
Of course, you can also use the
first syntax on a previously format-
ted. Use care with HEADER, since
it effectively destroys all infor-
mation that a disk might have con-
tained before.
VIEW. You can consider this
command a bonus, since it doesn't
appear in either BASIC 7.0 or
BASIC 2.0. It allows you to view a
program file without disturbing the
program currently in memory. This
is very useful when you need to
refer to a second program quickly
and do not wish to save and reload
the program you are working on.
This command, for instance, dis-
plays the contents of the program
file named MYPROG:
VIEW "MYPROG"
VIEW displays correctly all
BASIC 2.0 keywords, as well as the
BASIC 7,0 keywords that are added
by PFkey 64. However, it does not
recognize other BASIC 7.0 key-
words that PFkey 64 does not sup-
port (BUMP is one example).
Program Notes
PFkey 64 uses the memory areas
from locations 40448-40959,
49152-53247, and 679-767. You
PFkey 64 Quick Reference
This table lists the abbreviations for every PFkey 64 keyword. It also shews the mode in which a
command or function can be used. The abbreviation PRG means that a command works only in
program mode, while D!R means that it works only in direct mode (when you're not running a
program). ALL means that it works in both program and direct mode. The token value indicates the
one- or two-byte value used to represent the keyword internally within a program line.
Command
Abbreviation
AUTO
A shift-U
BANK
B shift-A
COLLECT
COL shift-E
COPY
CO shift-P
DCLEAR
DCL shift-E
DEC
none
DELETE
DE shift-L
DIRECTORY
DI shifl-R
ERRS
E shift- R
HEADER
HE shift-A
HELP
H shift- E
HEX$
H shift-E
POINTER
PO shift-I
RENAME
RE shift-N
RENUMBER
REN shift-U
RESUME
RES shift-U
RREG
R shift- R
SCRATCH
SC shift-R
TRAP
T shift-R
TROFF
TRO shift-F
TRON
TR shift-O
VIEW
VI shift-W
XOR
X shift-O
should not attempt to use other
utilities or programs that make use
of those memory areas. The first
area is also used by the computer
itself whenever you open a channel
to the RS-232 device (a modem or
serial printer). If you wish to use
PFkey 64 with programs that open
the RS-232 channel, install PFkey
64 first, and then load and run the
program that accesses the RS-232
device. The program also creates
four variable descriptors when it is
installed. To help protect against
crashes, PFkey 64 modifies the
POKE command to produce an IL-
LEGAL QUANTITY error when
you to change the contents of mem-
ory areas used by this program.
Those PFkey 64 keywords that
are equivalent to BASIC 7,0
keywords are tokenized just like in
BASIC 7,0. Thus, a Commodore 64
program that uses PFkey 64 state-
ments like RREG or TRAP will also
load and run properly on a Com-
modore 128. Likewise, a Commo-
dore 128 program using these
keywords will work, load, and run
on a 64 with PFkey 64. A very
significant exception is that the
BANK statement performs a very
different operation in PFkey 64
than it does in BASIC 7.0. You
Mode
Token value
DIR
$DC (220)
ALL
$FE 02 (254 02)
ALL
$F3 (243)
ALL
$F4 (244)
ALL
$FE 15 (254 21)
ALL
$D1 (209)
Dm
SF7 (247)
ALL
$EE (238)
ALL
$D3 (211)
ALL
$F1 (241)
ALL
SEA (234)
ALL
$D2 (210)
ALL
$CE OA (206 10)
ALL
$F5 (245)
Dm
$F8 (248)
PRG
$D6 (214)
ALL
$FE 09 (254 09)
ALL
$F2 (242)
PRG
SD7 (215)
ALL
SD9 (217)
ALL
$D8 (208)
ALL
SFE 06 (254 06)
ALL
$CE 08 (206 08)
should also be aware that PFkey 64
supports only a few of the added
features of BASIC 7.0. Thus, it will
not allow all 128 programs to be
run on a 64 — just those that use the
BASIC 7.0 statements specifically
supported by PFkey 64.
PFkey 64
Please refer to the
•UL>
" article in this Issue
before entering the following program.
BF40:28
43
29
38
37
43
4F
4D
FF
BF4a:50
55
54
45
21
15
CI
63
68
BF50:C0
54
CF
59
C5
0F
02
38
FF
BF58:CE
60
A5
01
48
2C
45
00
5A
BF60:10
06
78
2D
45
C0
85
01
84
BFeasAB
00
Bl
14
AS
68
85
01
A2
BF70I58
40
A2
B3
A9
00
85
48
5F
BF78:85
47
20
FA
AE
20
28
AF
36
BFe0:A9
00
85
0D
A5
48
85
62
12
BFBSiAS
47
4C
03
CE
40
6E
CB
B6
BF90:20
9E
B7
8A
F0
21
C9
05
00
BF98:B0
F3
49
FF
30
19
A0
E7
AS
BFA0IB9
02
CF
99
FF
9D
38
00
69
BFA8:F7
78
A0
0B
B9
00
03
99
74
BFB0:EB
9E
B9
4D
BF
99
00
03
41
BFBSiae
10
Fl
AD
15
03
SD
E0
4A
BFC0:C3
AD
14
03
8D
DF
03
AD
61
BFCe : 90
02
8D
F8
9E
AD
8F
02
IF
BFD0:8D
F7
9E
A0
32
B9
24
9E
52
BFD8:99
F9
9E
88
10
F7
60
A0
CI
BFE0:44
B9
59
BF
99
00
00
88
EE
BFE8:10
F7
Afl
02
B9
C4
9E
99
5A
BFF0:DC
CF
88
10
F7
A0
02
B9
E4
BFF8:C7
9E
99
3A
CF
88
10
F7
93
C000;A4
38
ec
83
C4
C0
9E
90
A2
C008:05
A0
9E
20
S4
C4
20
A8
2A
C010:C4
90
06
20
82
04
4C
A0
3B
C018iC4
A5
01
AA
29
FE
85
01
81
0020:20
9E
BF
86
01
A0
97
B9
2D
C028:7B
A5
99
53
CF
88
D0
F7
73
July 1987 COMPUni 71
C030:A0 50 B9 C9 A6 99 03 CF 5B
C208:24 D0 03 20 C3 C2 C9 24 E7
C580:ll CA 00 FS 38 E9 7F AA 04
C038:88 10 F7 AS 01 AA 29 FE 5F
C2E0:F0 EB C9 25 F0 E7 C9 28 48
C58S:A9 A0 85 23 A9 9E 85 22 E8
C040:85 01 20 DP BE 86 01 78 59
C2E8:F0 E3 68 68 D0 2B AA A5 Al
C590:30 08 A9 CC 85 23 A9 55 99
C048:A9 4D 8D SF 02 A9 C3 8D 68
C2F0:7A 48 AS 7B 48 8A 00 03 43
C598!8S 22 A0 FF CA F0 07 C8 74
C050!90 02 A9 D6 8D 14 03 A9 A9
C2F8:20 73 00 20 21 CD F0 16 A5
C5A0SB1 22 10 FB 30 F6 C8 Bl EF
C058:C3 8D 15 03 A9 00 8D 45 9F
C300:24 0F 30 F4 C9 B2 F0 0E BB
C5A8:22 30 9C 20 02 FF D0 F6 16
C060:C:0 58 60 20 47 C0 2C 99 95
C308iC9 3A F0 0A 20 13 Bl 90 03
C5B0:4C 6E CB 20 EB B7 A5 15 18
C068:9E 10 11 EE 99 9E 20 BD 93
C310:E7 20 AA C2 D0 ES A9 00 86
esse : AC 45 C0 C0 FC F0 10 C9 A5
C070:C4 90 09 20 FS C3 20 60 13
C3ia:2C A9 FF 85 0B 68 85 7B F8
C5C0:D0 B0 0C C9 C0 B0 E9 C9 65
C078:A6 4C A0 C4 AD 92 9E 10 C5
C320:68 85 7A A5 0B 60 08 20 F0
C5C8:A0 B0 04 C5 38 B0 El C9 BF
C080:27 CD 8F 9E F0 22 AD 8F DF
C328:A6 B3 28 F0 lA A5 39 80 6B
C5De:02 D0 03 20 2B CC 4C 27 40
C088:9E 85 62 AD 8E 9E 85 63 3F
C330:BC 9E A5 40 80 BD 9E A5 BC
C5D8;B8 20 IB CD A0 00 20 79 C7
C090:20 6F CA A2 00 BD 00 01 79
C338:7A 80 BE 9E A5 7B 80 BF 19
C5E0:00 F0 13 84 0B 20 FD AE D6
C098sF0 06 9D 77 02 E8 D0 F5 8A
C340:9E 20 F3 A8 A9 FF 2C A9 18
C5E8:20 9E B7 8A A4 0B 99 0C 5C
C0A0SA9 20 9D 77 02 E8 86 C6 Bl
C348:00 8D 9B 9E 60 AD SO 02 67
C5F0!03 CB C0 04 D0 E8 4C 30 7B
C0A8:20 60 A5 86 7A 84 7B 86 D2
C350:C9 03 00 03 4C 4F EB 0A 49
C5r8:El A8 24 00 30 08 20 A2 79
C0B0:3A 8E 8F 9E 20 73 00 F0 8E
C358:C9 08 90 02 A9 06 AA BD 71
C600:B3 A5 0E 4C C2 A9 4C 90 4A
C0B8:AD 90 06 20 79 A5 4C El D4
C360:79 EB 85 F5 BD 7A EB 85 E4
C608:C4 A0 00 84 0B F0 09 A4 3B
C0C0!A7 CE 99 9E 20 6B A9 C9 B2
C368:F6 A4 CB C4 C5 F0 ID Bl 38
C610:0B C0 04 F0 19 20 FD AE 06
C0C8:00 F0 16 2C 92 9E 10 11 4C
C370:F5 C9 20 D0 08 AO 96 9E 39
C6ia:20 8B B0 85 49 84 4A A4 9C
C0D0:A5 14 18 60 90 9E 8D SE AC
C378:49 FF 80 96 9E 2C 93 9E 2B
C620!0B B9 0C 03 E6 0B 20 F9 F0
C0D8S9E A5 15 6D 91 9E 8D SF 3E
C380:10 2D A2 08 DD IB 9E F0 B9
C628!C5 20 79 00 00 El 60 20 BE
C0E0:9E 4C 9F A4 20 8C C4 F0 80
C388:06 CA 00 F8 4C E0 EA 8A B5
C630:34 CS 20 El FF F0 11 24 75
C0E8:12 20 6B A9 AS 15 8D 91 Bl
C390IA8 A9 00 18 7D F8 9E CA 30
C63S:90 70 01 60 A9 02 24 90 7E
C0F0!9E A5 14 F0 0F 80 90 9E 2B
C398:D0 F9 80 94 9E 38 F9 F8 C4
C640!F0 03 A9 04 2C A9 80 2C Bl
C0F8:A9 FF 2C A9 00 8D 92 9E 69
C3A0:9E CD 94 9E F0 E6 8D BF 65
C648:A9 IE 2C A9 05 48 20 DD B9
C10.0:8D 8F 9E 60 4C 6E CB 20 DB
C3A8:C3 80 95 9E EE 93 9E 20 35
C650:C6 68 10 03 68 68 60 AA DO
CI 08: El FF F0 03 4C Bl A7 A5 E8
C3B0:B7 C3 A2 FF 4C 26 EB A6 02
C658:6C 00 03 A0 00 2C A0 0F 87
C110:91 10 PC A2 IE A4 3A C8 EA
C3B8:C6 EC 89 02 F0 15 A0 00 40
C660:A9 0F 85 B8 84 B9 A9 02 23
CI 18: 08 F0 05 A9 FF 8D 9E 9E 29
C3C0:a9 01 9F 90 77 02 E8 C8 91
C668:85 BC A9 A7 85 BB 20 79 6C
C120:8A 30 45 BE 9E 9E A8 20 67
C3C8:8C BF C3 CC 94 9E 00 E9 76
C670:00 F0 0D 20 FD AE A9 55 31
C128:A2 B3 A9 17 20 D3 9E 28 46
C3D0:CE 93 9E 86 C6 60 2C 93 84
C678:20 FF AE 20 9E B7 86 BA 89
C130:08 F0 IF A0 01 B9 39 00 43
C3D8:9E 30 03 20 B7 C3 4C 31 B4
C680:2C 9D 9E 10 03 20 FE C7 BE
C138:99 C0 9E B9 3D 00 99 C2 08
C3E0!EA 4C 94 C4 4C A3 C4 20 6A
C688:20 2B CC AS BA C9 08 90 82
C140:9E 88 10 Fl AD CI 9E AC B4
C3E8:ac C4 F0 FB 20 6B A9 20 B7
C690!04 C9 IF 90 02 A9 08 85 CB
C148:C0 9E 20 91 B3 A9 10 20 75
C3F0JF8 C3 4C 6E C9 4C 6E CB 7E
C69e:BA 2C 98 9E 10 06 20 AD 12
C150:D3 9E AE 9E 9E AD 9B 9E A6
C3F8:20 13 A6 90 E4 AS 14 48 61
C6A0:F5 20 FD C4 20 00 C6 20 63
C158:30 26 E0 IE F0 0D E0 IF 18
C400:AS 15 48 20 79 00 F0 0A 64
C6Aa:C0 FF A6 B8 20 C9 FF B0 CF
C160:90 06 20 6E CI 4C 47 A4 0B
C408:A9 AB 20 FF AE 20 6B A9 CB
C6B0:9A 20 CC FF A6 B8 4C C6 A4
C168:4C 8B E3 4C 32 A8 F0 03 4F
C410:D0 D2 68 AA 68 E4 15 90 FF
C6B8:FF A2 00 86 B7 A9 0F 85 SF
C170:A2 02 2C A2 00 BD CA 9E A0
C418:08 D0 DA C5 14 90 02 D0 49
C6C0:B8 85 B9 20 88 C6 A0 00 E5
C178:85 22 BD CB 9E 85 23 60 6D
C420:D4 A5 5F 85 22 A5 60 85 AF
C6CB:20 CF FF 99 A7 02 2C 9D 2F
C180:28 P0 D7 AD BE 9E 85 7A 20
C428:23 20 13 A6 90 B3 A0 00 AC
C6D0:9E 10 03 20 D2 FF C8 24 60
C188:AD BF 9E 85 7B AD BC 9E A9
C430:B1 5F AA CB Bl 5F 85 60 C2
C6D8:90 50 ED 84 B7 20 CC FF A0
0190:85 39 AD BD 9E 85 40 20 62
C438:86 5F A0 00 Bl SF 91 22 41
C6E0:A5 B8 4C C3 FF A9 S3 20 A2
C198tA7 CI A5 7A D0 02 C6 7B 54
C440:E6 22 00 02 E6 23 A6 60 71
C6E0:21 C8 85 B7 A6 3A ES F0 46
C1A0:C6 7 A A9 89 4C 34 C2 AD 5A
C448:A4 5F C8 D0 01 E8 86 60 3B
C6F0:03 4C 7E C7 CE 90 9E 20 A9
C1A8:9B 9E 80 9C 9E 49 FF 8D C4
C450:B4 5F C4 2D D0 E4 E4 2E 71
C6F8:5E C6 20 FD C4 4C C6 C6 F6
C1B0I9B 9E 68 A8 68 A2 00 9A A9
C458:D0 E0 4C A8 C4 78 A0 0B EA
C700:A9 4E 20 21 C8 85 B7 S5 5F
C1B8:48 98 48 60 A2 IF 6C 00 FF
C460:B9 EB 9E 99 00 03 88 10 5C
C70a:B8 AA 20 79 00 C9 2C 00 8A
C1C0I03 20 A6 B3 2C 9B 9E 30 IB
C468:F7 AD F7 9E 80 SF 02 AD 9E
C710:36 9D A7 02 A0 01 Bl 7A IE
ClC8iF3 2C 9C 9E 10 EE C9 82 21
C470:Fa 9E 8D 90 02 AO E0 C3 25
C7ie:C9 49 00 2S C8 20 FB A8 13
C1D0ID0 C5 A0 01 B9 C0 9E 99 F9
C478t8D 15 03 AD DF C3 8D 14 86
C720:A0 FF CB E8 Bl 7A 90 A7 02
C1D35 3B 00 B9 C2 9E 99 7A 00 AD
C4a0:03 58 A0 A0 A2 00 20 2D 42
C728:02 F0 08 C9 24 F0 0B C9 57
C1E0:88 10 Fl 20 A7 CI 20 73 E4
C488:FE 4C 02 E4 A4 3A C8 D0 A3
C730:2C 00 EF C0 02 F0 00 4C 4E
C1ES:00 20 F8 A8 4C Bl A7 20 B6
C490:09 4C 79 00 A2 11 2C A2 35
C738:A3 C4 20 26 C8 AA A5 B8 26
C1F0:9E AD 20 79 00 C9 89 P0 F5
C498:80 2C A2 22 2C A2 16 2C 28
C740:C9 02 00 F3 20 FB AS 86 57
C1F8:05 A9 A7 20 FF AE A5 61 C7
C4A0:A2 10 2C A2 0B 6C 00 03 3C
C748:B7 4C 7B C7 A9 43 2C A9 0F
C200:D0 03 4C 3B A9 68 68 20 CB
C4A8!20 33 A5 A4 23 A5 22 18 lA
C750:52 48 A2 13 A9 3D 90 A7 CS
C208j79 00 B0 24 4C 9A CI 2C IF
C4B0:69 02 90 01 CS 84 2E 85 CB
C7S8:02 20 24 C8 85 B7 A9 A4 05
C210:9A 9E 10 19 A6 3A ES F0 FE
C4B8:2D 84 30 85 2F AS 20 A4 67
C760:20 FF AE 68 20 21 C8 C9 30
C218:14 A9 SB 20 FF C4 CA 8A B2
C4C0:2E 18 69 IC 90 01 C8 C4 35
C768:13 F0 13 BO A7 02 99 A7 IC
C220:A6 39 20 34 C5 20 CD BD 96
C4C8:3e 90 04 00 02 C5 37 60 16
C770:02 C8 E8 E4 B7 D0 F4 84 0E
C22a:A9 5D 20 FF C4 20 73 00 6B
C4D0:A9 FF 2C A9 00 80 9A 9E 59
C778:B7 F0 03 CE 90 9E 20 5E 73
C230IC9 FE F0 F9 BA SE B6 CI 57
C4D8:60 AE 9E 9E ES F0 19 AD E6
C760:C6 4C DD C6 A9 56 2C A9 57
C238:AA C9 8A 00 03 20 FB C0 35
C4E0:C0 9E AC CI 9E 85 14 84 OB
C788!49 20 4A C8 E8 86 B7 D0 3C
C240:A5 30 C5 2E D0 09 A5 2F 65
C4E8:15 20 13 A6 90 0A A9 80 52
C790:ED A2 01 A9 24 80 A7 02 23
C248:C5 2D D0 03 20 8A CE A9 B8
C4F0:8D 97 9E 4C 03 CF 68 68 50
C798:86 B7 20 5B C6 CE 98 9E 54
C250:00 8D 96 9E 80 98 9E 80 8F
C4F8:A9 00 80 97 9E A9 0D 20 58
C7A0:A0 03 84 0B 20 CF FF 85 48
C258:9D 9E A9 CI 48 A9 06 48 E2
CS00:34 CS 4C D2 FF C8 D0 03 95
C7A8:14 20 2F C6 20 CF FF 85 62
C260:aA 48 10 0C A2 07 DO DF CC
C508:4C 4E CF AD 97 9E F0 23 5E
C7B0:15 20 2F C6 C6 0B 00 EC 16
C268:9E F0 05 CA 10 F8 30 08 93
CS10:10 ID A6 60 98 18 65 SF IS
C7a8:A6 14 A5 15 20 CD BD A9 04
C270:20 EE C2 F0 03 4C A3 C4 7E
CSia:90 01 ES EC C3 9E D0 13 65
C7C0:20 20 59 CS 20 CF FF 85 B5
C278i68 A2 16 DD 38 CC F0 lA 6C
C520!CD C2 9E 90 0E F0 0C A9 16
C7Cai0B 20 21 CD 20 2F C6 AS D7
C280:CA 10 FB A2 03 00 65 9E Bl
C528:12 4E 97 9E 20 02 FF Bl 2B
C7D0:0B 00 EE 20 FD C4 A0 02 40
C288:P0 05 CA 10 FS 30 05 A2 57
C530:5F F0 C3 60 48 AO 95 9E E8
C7Oe:D0 C8 A2 FF 20 2 4 C8 35 FF
C290:00 8E 9F 9E 20 7C 00 4C D6
C538:38 65 C8 80 BF C3 AD 96 2A
C7E0:B7 CE 9S 9E 20 5B C6 20 19
C298:ED A7 8A 85 0P 0A AA BD 5C
C540;9E 30 FB 85 C6 68 60 29 C0
C7E8:CF FF AA 20 CF FF 20 2F A5
C2A0:D4 CC 48 BD D5 CC 48 40 67
C548:7F A4 49 20 02 FF 20 34 P2
C7F0:C6 A0 07 B9 69 9E 20 02 61
C2Ae:73 00 AA 20 73 00 20 13 2E
C5S0:C5 2C 98 9E 30 F0 4C 30 D4
C7FB:FF 88 10 F7 30 D5 A6 3A 8C
C2B0:B1 90 lA E0 44 F0 19 E0 7D
C5S8:CF 10 F0 C9 FF F0 EC 24 4C
C800:E8 00 15 A0 0C B9 71 9E AF
C2BB:45 00 08 C9 4C F0 IC C9 DA
C560:0F 30 ES C9 CE F0 04 C9 45
C808:20 02 FF 88 10 F7 20 CF 57
C2C0:52 F0 18 20 73 00 90 FB 69
C568iFE 00 0D 2C 98 9E 30 05 50
Cei0!FF C9 59 F0 03 4C 97 C4 BB
C2C8:20 13 Bl B0 F6 4C 7C 00 46
CS70:C8 Bl 5F 00 03 20 CF FF FO
C818:60 A2 08 2G A2 17 4C 15 65
C2D0:C9 53 00 EF 20 C3 C2 C9 88
C578:84 49 A2 19 DO 3A CC F0 E0
C820:C1 20 4A CB 86 BB 20 0F 06
72 COMPUTEI July 1987
C828:CD F0 EE C9 11 B0 ED A6 25
OAD0:CB A9 00 85 14 A9 9F 85 IB
CD78:20 7D B4 A9 02 85 08 A0 91
C830:B8 SS B8 A0 00 E8 Bl 22 C9
CAD8:4A A9 01 85 49 E6 14 A5 2A
CD80:FF 08 84 41 A5 64 48 29 6B
C838:9D A7 02 C8 C4 B8 D0 F5 EF
CAE0:14 AA 09 30 8D 52 9E A0 E2
OD88:0F AA 68 4A 4A 4A 4A A8 CO
C840i9a 18 69 03 A8 E8 8h A2 22
CAE8:06 B9 50 9E 20 D2 FF 88 88
0090 :B9 7E 9E A4 41 91 62 BD 99
C848!l3 60 A2 00 9D A7 02 E8 48
CAF0:D0 F7 BD F8 9E F0 50 85 13
CD98:7E 9E C8 91 62 A5 65 85 47
C850:A9 30 9D A7 02 E8 A9 3A 32
CAF8:15 Bl 49 48 09 22 F0 0A F5
CDA0:64 06 OB D0 DC 40 CA B4 F0
C858:9D A7 02 60 4C 97 C4 20 53
C300:29 7F C9 14 F0 04 09 0D BE
CDA8:A5 14 48 AS 15 48 A9 20 08
C860:8C C4 C8 Bl 2B F0 F5 86 2F
CB08:D0 20 A6 D4 F0 03 A2 00 0E
CD30:20 18 CD 68 45 15 85 62 8E
C868:B9 57 9E 99 BC 9E C8 C0 CC
CB10:2C A2 02 BD 5D 9E C9 29 A4
CDB8:68 45 14 40 03 CE A9 28 EF
0670:06 90 F5 85 03 8D 9B 9E A4
CB18:F0 06 20 D2 FF E8 D0 F3 14
CDC0:20 00 CD 48 20 F7 AE 68 54
C878:8D 9E 9E 20 79 00 D0 08 C3
CB20:68 AA 98 48 A9 00 20 CD 89
ODC8:D0 05 20 E9 BC F0 36 09 90
0880:20 79 00 F0 IC 20 FD AE 9B
OB28:BD 68 AS 20 62 OB F0 17 0B
CDD0:0S B0 15 A9 00 A0 FF 85 60
C888i20 68 A9 A5 0B AA 0A A8 54
0830:88 20 65 CB D0 03 A6 D4 35
CDD8:63 85 62 08 Bl 22 A2 0F CA
Ce90iA5 14 99 BC 9E A5 15 99 48
C838:D0 04 88 20 5F CB 68 20 67
CDE0:DD 7E 9E F0 06 CA 10 F8 62
C898:BD 9E E8 86 0B E0 03 90 AS
CB40;67 CB D0 B5 20 5F CB A6 B0
CDE8:4C 6E CB A5 00 29 01 D0 F9
C8A0:DF 20 74 C9 C8 Bl 5F 8D AE
CB48:14 E0 08 F0 0F BD F8 9E 32
CDF0:0E 8A 0A 0A 0A 0A 85 63 7D
ceA8tC0 9E C8 Bl 5F 8D CI 9E C9
OB50:ia 65 49 85 49 90 02 E6 46
CDF8:C6 0D 10 DF 8A 05 63 06 31
caB0iA5 62 18 C9 FA 90 03 4C B9
CBS8:4A 40 DD CA A9 0D 20 A9 14
CE00:0D D0 D6 85 63 A2 90 38 8A
C8B8:B2 C9 20 BA C9 D0 Fl 20 5B
CB60:22 2C A9 29 2C A9 2B 20 5A
CE0S:4O 49 BC 68 68 20 73 00 E6
C8C0:D7 C9 90 0C 4C 5B C9 20 07
CB68:D2 FF C8 04 IS 60 A2 0E 40
CE10:OA 30 AB AS 14 48 A5 15 11
C8C8:A8 C4 4C 94 C4 20 FE C9 21
C370:2C A2 17 4C 15 CI 20 9E FC
CE18:48 8A 0A F0 07 46 A9 28 Al
C8D0:B0 71 20 13 A6 90 F0 A4 4A
CB78:B7 8A F0 F2 09 09 80 EE 9E
CE20:2O 18 CD 68 AA BD 02 CD 32
C8D8:14 A5 IS CD CI 9E 90 ED P4
CB80:8D 52 9E A9 2C 20 00 CD A9
CE28:85 56 BD 03 CD 85 55 20 55
C8E0:D0 05 CC C0 9E 90 E6 85 4C
CB88:A0 00 A2 09 A9 00 OA F0 29
CE30:54 00 68 85 15 68 85 14 C6
C8E8:25 84 24 20 57 CA 20 9E 91
CB90:06 18 7D F8 9E 90 F7 99 31
CE38:4C F7 AE A5 7A 48 AS 7B ES
C8F0:9E 30 29 C4 0B F0 D6 90 A9
CB98:A7 02 08 00 04 F0 21 AE 7E
CE40:48 20 73 00 09 CE F0 F9 DD
C8F8:0E 98 E5 0B 18 65 2D 85 5B
CBA0:52 9E BD F8 9E 48 38 E5 BC
CE48:A2 05 DD 4F OC FO BC CA 97
C900I2D 90 CA E6 2E B0 C6 A5 7D
CaA8:0D 99 A7 02 08 A5 0D 48 81
CE50:10 F8 2C 9F 9E 30 2A 09 87
C908:0B 84 0B 38 E5 08 85 0B 98
CBB0:38 FD F8 9E 99 A7 02 68 04
CE58:44 D0 26 20 EE 02 F0 21 98
C910IA5 2D E5 0B 85 2D B0 B5 27
CB88:9D F8 9E 8A 48 C8 D0 CC AD
CE60:20 B9 C6 A9 FF 8D 9F 9E 04
C918:C6 2E 90 Bl C4 0B F0 03 FE
CBC0:48 18 65 0D 99 A7 02 ca 38
CE68:88 98 A0 02 91 2D A9 A7 E0
C920:20 80 CA A0 00 B9 00 01 2F
C8C8i6a 99 A7 02 68 AA 68 46 17
CE70:e5 7A A9 02 85 73 20 79 96
C928:F0 05 91 45 C8 D0 F6 98 0C
CBD0:ia 79 A7 02 99 A7 02 68 EF
CE78:00 20 F3 BC A9 09 20 03 ED
0930:18 65 45 90 02 E6 46 35 98
CBD8:85 08 C5 0D F0 3B 90 ID 32
CE80:9E 68 85 7B 68 85 7A 4C 8A
C938:7A A5 46 85 7B 20 A8 C4 06
CflE0:AE AB 02 AC AC 02 B9 01 A7
CE88:86 AE A9 00 60 9F 9E 8D FF
0940 :4C CD CS 2C 9E 9E 30 13 2C
CBE8:9F 9D 01 9F C8 ES EC A7 3D
CE90;9C 9E 8D 9B 9E 20 BD C4 45
C948:CE 9E 9E 20 BD C4 08 20 Fl
CBF0:02 D0 F3 F0 24 A5 0B 9D B6
CE9e:84 30 84 32 85 2F 85 31 5D
C950:A8 04 28 B0 03 4C BF CS 03
0BF8:F8 9E 4C 71 CB AD A7 02 BE
CEA0:A0 IE B9 A0 9E 91 2D 88 B4
C958:4C A0 C4 20 74 09 A0 03 E3
CC00:18 6D A9 02 B0 EF AA AC 9D
CEA8:10 F3 60 A0 FF E6 0B A6 FA
0960 :A5 62 91 5F 88 A5 63 91 BA
0008 :A7 02 CC AA 02 90 0A B9 5A
CEB0:7A CA E8 C8 BD 00 02 38 12
0968: 5F 20 BA 09 D0 F0 20 60 92
0010:01 9F 9D 01 9F CA 88 10 IF
CEBa:F9 55 CC F0 F5 09 80 D0 F9
C970:A6 40 97 C4 AD C0 9E 85 DC
CCI81FI AE AA 02 A0 00 04 0D 67
CEC0:2A AS 0B 38 E9 4A A8 B9 45
C978tl4 AD 01 9E 85 15 20 13 77
CC20;F0 09 31 22 9D 01 9F Ea E5
CEOa:38 CC 85 0B A0 07 88 30 79
0980 :A6 A5 5F 48 A5 60 48 AD 2E
CC28:C8 D0 F3 A9 00 60 9F 9E 87
CEDOilS D9 31 CC D0 F8 CO 02 50
C9a8:BC 9E 85 14 85 63 AD BD E6
0030:60 08 0A 02 09 15 IE 24 5A
CED8i90 03 A9 FE 2C A9 CE E6 31
C990:9E 85 15 85 62 20 13 A6 30
CC38:8B 9E 97 EE EA F2 F5 24 54
CEE0:71 A4 71 99 FB 01 A9 00 5F
0998:66 AA 68 E4 60 90 08 D0 8C
CC40:F9 IE 15 PI F3 Fa D3 D9 2F
CEE8:4C 9D CF B9 55 CC 30 06 ED
O9A0:11 C5 5F 90 02 D0 0B 86 13
CC48:D7 D6 F7 DC 09 F4 02 Dl 42
CEF0:Ca B9 55 CC 10 FA B9 56 OF
C9A8!60 85 5F A0 01 Bl 5F F0 42
CC50:0A 02 D3 08 C2 44 49 52 AA
CEFe:OC D0 B2 A6 7A BD 00 02 BE
C9B0:BD 60 A9 FF SD 01 9E 40 6D
CC58:45 43 54 4F 52 09 48 45 B4
CF00:4C 9F CF 43 41 4E 27 54 CI
C9B8:6E OB A5 63 16 6D BE 9E F3
CC60:4C D0 53 43 52 41 54 43 76
CF08:20 52 45 53 55 4D C5 44 D9
C9C0:85 63 A5 62 6D BF 9E 85 F7
CC6e:C8 52 45 4E 41 4D C5 56 A9
CF10:49 52 45 43 54 20 4D 4F D2
0908:62 A0 01 Bl 5P 48 88 Bl OF
CC70:49 45 D7 4B 45 D9 51 55 39
CF18:44 45 20 4F 4E 4C 09 85 01
O9D0:5P 85 5F 68 85 60 60 20 76
CC78:49 D4 44 43 40 45 41 02 75
CF20:a9 86 8A 87 8B 88 8C 04 8B
C9D8:aE A6 A0 02 Bl 7A D0 02 AC
CC80!48 45 41 44 45 D2 43 4F 47
CF28:05 05 05 04 04 05 05 44 EE
C9E0:3a 60 08 Bl 7A 85 39 C8 02
006a:4C 40 45 43 D4 52 45 4E 01
CF30:49 D2 0D 3F 44 53 24 00 83
C9E8:B1 7A 85 3A 20 FB A8 A5 30
0090:55 4D 42 45 02 54 52 4F A0
CF3B:4a 45 4C 50 00 56 49 45 75
C9F0:7A 85 3D A5 7B 85 3E A9 3D
CC98:CE 54 52 4F 46 06 54 52 36
CF40:57 22 52 55 4E 0D 48 45 36
C9Fa:00 85 0E 20 73 00 20 79 07
CCA0:41 D0 52 45 S3 S5 4D CS FD
CF48:59 0D 40 49 S3 54 0D 51 4D
CAB0!00 20 21 CD F0 D4 24 0F D0
CCA8:44 45 40 45 54 05 41 55 25
CP50:55 49 54 0D 20 23 59 45 2E
CA0a:30 Fl C9 CB D0 09 20 73 86
OOB0:54 OF 52 52 45 C7 43 4F F6
CF58:4B 0D 0A 00 OA 00 00 00 7 2
CA10:00 09 A4 D0 02 A9 89 A0 24
CCB8:S0 D9 42 41 4E OB 44 45 BO
CF60:22 2B 43 48 52 24 28 29 65
CA18:04 D9 CE 9E F0 15 88 10 E6
CCC0:C3 50 4F 49 4E 54 45 D2 EF
CF68:93 94 95 9F 00 47 4E 49 0F
OA20:F8 09 8A F0 0E C9 91 D0 90
CCC8:48 45 58 A4 45 52 5 2 A4 E9
CF70:57 45 49 56 3F 45 52 55 A4
CA28:02 85 0E 09 3A F0 00 24 89
CCD0:58 4P D2 00 01 EE C5 D8 F2
CF78:53 20 55 4F 59 20 45 52 91
OA30:0E 10 08 20 73 00 B0 C6 AF
CCD8:CS B2 C7 90 C4 DS 06 E4 FF
CF80:41 30 31 32 33 34 35 36 21
CA38iA0 FF 08 Bl 7A 09 30 90 3E
CCE0:C7 4E C7 D9 CA OB 04 50 F3
CF88:37 38 39 41 42 43 44 45 P9
CA40:04 09 3A 90 F5 84 OB A5 18
CCE8:C7 86 06 FF C7 83 CS 5E ID
CF90:46 00 FF 00 00 00 FF 00 53
CA48:7A 85 45 A5 7B 85 46 20 IE
CCF0:O4 OF 04 D2 03 25 CI 00 9D
CF9a:00 00 00 00 00 00 00 00 38
CA50:79 00 20 6B A9 18 60 20 EB
COF8:03 E6 00 E3 06 08 07 43 B5
CFA0:00 FP 00 44 03 00 A7 02 74
CA5a:74 09 D0 03 20 BA 09 A0 05
CD00:C0 36 00 IB CD 76 CD 35 6C
CFA8:00 00 44 53 80 00 00 00 0A
CA60:03 Bl 5F AA 88 Bl 5F E4 29
CD08:CD AS 00 01 20 FF AE 20 5B
CFB0:00 45 40 90 7F FF 00 00 30
CA6a:25 D0 PI 05 24 D0 ED 20 BF
CD10:9E AD 20 A3 B6 85 0D 60 EA
CFB8:45 S2 Bl 80 00 00 00 00 C7
CA70:05 CE 20 DF BD A0 00 89 68
CD18:20 FF AE 20 8A AD 4C F7 37
CFC0:a0 00 00 00 00 00 00 40 AC
CA78:00 01 F0 03 ca D0 F8 60 78
CD20:B7 48 09 00 F0 08 C9 22 40
CFC8:AB CE 20 05 05 00 9E 00 BD
CA80:90 22 98 E5 0B 85 03 A0 7D
CD28:D0 06 A5 0F 49 FF 85 0F B7
CFD0:9E 89 8D A7 D6 D7 A4 2E DB
CASS: 00 Bl 2D A4 0B 91 2D A6 lA
CD30:68 60 4C 6E CB A6 15 D0 70
CFOBiia 65 2D 90 01 08 AA 4C 59
CA90:2E A4 2D D0 01 CA 88 86 E3
CD38:F9 A5 14 F0 F5 09 IF 90 71
CFE0:D4 BB SI 84 85 87 88 96 44
CA98:2E 84 2D C4 45 D0 E8 E4 70
CD40:0D F0 06 08 09 22 DO EA 43
CFE8:A1 A7 50 46 4B 45 59 36 OA
CAA0:46 D0 E4 60 80 B4 CA AS A2
CD48:28 20 6E 01 D0 00 0A AA 5F
CFF0;34 20 62 79 20 4A 45 46 91
CAAa:45 85 22 A5 46 85 23 A4 14
CO50:BD 26 A3 85 22 BD 27 A3 IB
CFF8:46 20 50 41 52 54 43 48 94
CAB0:0B Bl 22 A0 00 91 22 A6 B7
CD58:85 23 A0 FF C8 Bl 22 10 F4
@
CABS: 23 A4 2 2 ca D0 01 E8 86 BC
CD60:FB 08 98 20 7D B4 A0 FF 41
CACa:23 84 22 04 2D D0 ES E4 FC
CD68:C8 Bl 22 48 29 7F 91 62 6A
CAC8:2E D0 E4 60 F0 03 4C 76 EE
CD70:68 10 F5 40 CA E4 A9 04 48
July 1 987 COMPUTEI 73
Zookeeper
For The Amiga
Data for object images is stored in
individual files— which can quickly
lead to an wimanageable directory.
This utility provides a solution— pro-
grams not only initialize faster, but
they are also easier to handle.
The object commands in Microsoft
Amiga BASIC, which allow you to
manipulate sprites, vsprites, and
bobs, provide easy access to some
of the Amiga's most powerful ani-
mation routines. However, you
must store the data for each object
image in its own, separate file.
Thus, if your program uses six ob-
jects, you'll have to manage seven
separate disk files (six object files,
plus the program itself)- Before
long, your previously-neat disk di-
rectory can start looking like a zoo.
"Zookeeper" offers a neat solu-
tion to this problem by converting
image definition files into DATA
statements which can be part of the
main program. The DATA lines are
organized into meaningful sections
with commentary, bringing order to
the object zoo.
Defining objects under pro-
gram control does make the pro-
gram itself somewhat larger. But
the advantages of this method defi-
nitely outweight the drawbacks.
Only one file need be duplicated
when exchanging the program with
a friend, and a printed listing of the
program shows everything needed
Michael Barron
to make it run properly. The pro-
gram also initializes faster, since it
simply READs DATA statements
already in memory, rather than
seeking and loading separate files
on disk. And, finally, it eliminates
the problems that can occur when a
program is not able to load the nec-
essary object files.
Using The Zookeeper
Type in Program 1 and save a copy.
The Zookeeper can handle object
definition files for both sprites and
bobs, in the format produced by the
object editor program on the Amiga
BASIC Extras disk. Let's demon-
strate how it works using an ex-
ample image file from the Extras
disk.
In the BASICDemos drawer of
the Extras disk is an image defini-
tion file named ball. Copy that file
onto the same disk (and directory, if
applicable) where you saved the
Zookeeper program.
Run Zookeeper and enter the
appropriate filename at the prompt.
The program then asks you to enter
the maximum number of data ele-
ments for each DATA statement
(eight is a good number). With this
information, Zookeeper creates a
text file consisting of commented
DATA statements. The DATA lines
contain the same information as the
image definition file. This new file
has the same filename as the one
which you entered earlier, with the
filename extension .ZOO. Thus, it
you are converting the image file
named ball, the new file is named
ball.ZOO.
When the .ZOO file has been
created, the Zookeeper program
gives you the option to delete the
original image definition file. Do
not delete anything at this point.
Demonstration
After you have created the ball
.ZOO file, type in Program 2. This
program will show you how easy it
is to use the new image format.
After you type in all the lines listed
in Program 2, enter this command
in the BASIC Output window;
MERGE "ball.ZOO"
The effect of this command is
to merge the DATA lines from the
ball.ZOO file with Program 2,
which is already in memory. The
DATA lines appear at the end of the
current program.
Before you run the combined
program, look at the subroutine
named biitPlayer, near the end of
Program 2. That routine sets a vari-
able named ByteCount, which is
used to indicate how many items to
read from the DATA statments. If
you examine the comments at the
beginning of the ball.ZOO data,
you will see a comment indicating
how many bytes this particular set
of DATA lines contains.
Since we knew in advance that
ball.ZOO would create 106 bytes of
74 COMPUTEI July 1 987
data, we were able to use that num-
ber in the statement from InitPlayer
which sets ByteCount. For any other
image, however, that value will be
different. When using these rou-
tines to display your own objects,
you will need to examine the com-
ment at the beginning of the DATA
lines and modify the statement in
InitPlayer to match the number
shown.
When you run the demonstra-
tion, notice how much faster the
program begins. Not having to ac-
cess the disk drive is a great advan-
tage. Another advantage is easy
accessibility to the image data itself.
To see what we mean, find the
twenty-second DATA number in
the ball.ZOO data set, change that
number from 24 to 48, and then
rerun the program.
For Instructions on entering these programs,
please refer to "COIvlPUTEI's Guide to Typing
In Programs" elsewhere in this issue.
Program 1: Zookeeper
' SooKeeper*
' Convert image definition files
to DATA statements*
' Copyright 1987 COMPUTE 1 Public
ations, Inc.-*
' All rigtits reserved.*
PRINT'-Copyright 1987 " i PRINT" Comp
utel Publications, Inc."*
PRINT" All Rights Reserved ," :FOR
X=l TO 2000: NEXT X*
CLS-«
HainLine;*
GOSUB HouseKeeping*
GOSUB ParameterEntry*
GOSUB DefineFieLds-*
IF NoErrors THEN*
GOSUB CreateZooFiLe*
GOSUB FiLeMaintenance*
END IF*
GOSUB EndJob*
END*
4
HouseKeeping t*
DEFINT a-z*
WINDOW l,"The ZooKeeper" , ( 0 , 56 ) -
(500, 186), 15*
TRUE= -1*
FALSE= a*
HeaderBytes= 26*
CoLorMapBytes= 6*
RETURN*
Parameter En try;*
PRINT*
INPUT "Enter name of AmigaBASIC
object file: ",FiLename$*
INPUT "Enter maximum number of d
ata elements per statement: ",Ma
xBytes*
PRINT*
RETURN*
*
DefineFieLds :*
PRINT "Input file: ";FiLename?*
OPEN FiLename? FOR INPUT AS 1*
Image$=INPUTS(LOF{l) ,1)*
CLOSE 1*
Depth6i= CVL(MIDS(ImageS,9,4) )*
UideSi= CVL(MIDS(Image5, 13,4) )*
Heigh t&= CVL( MID? ( Image? , 17,4) )«
Flags" CVI(MID$(ImageS,21,2) )*
BytesPerRow= 2*INT( (Wide&+15 ) /16
)*
BytesPerPlane= BytesPerRow*Heigh
t&*
BytesInBitraap= BytesPerPlane*Dep
th&*
IF Flags AND 1 THEN*
ObjectIsSprite= TRUE*
ReqBytes- HeaderBytes+BytesInBit
map+CoLorMapBytes*
ELSE*
GbjectIsSprite= FALSE*
ReqBytea= HeaderBytes+BytesInBit
map*
END IP*
IF LENdraage?) oReqBytes THEN*
PRINT FiLename?;" is not compati
ble with the ZooKeeper."*
NoErrora= FALSE*
ELSE*
NoErrors= TRUE*
END IF*
RETURN*
*
CreateZooFiLe : *
PRINT "Output file; " ; FiLename? ;
" .zoo"*
PRINT*
PRINT "Please wait,.."*
PRINT*
OPEN FiLename?+" .zoo" FOR OUTPUT
AS 1*
PRINT # 1,*
PRINT # 1, "ObjectData:"*
IF ObjectlsSprite THEN*
PRINT #
1 , "
SPRITE Format"
*
ELSE*
PRINT #
1 f "
BOB Format"*
END IF*
PRINT #
1 ^ •'
Total Bytes: "
; Req
Bytes*
PRINT #
1 , "
Bit Planes:
; Dep
thi*
PRINT #
1 , "
Pixels Wide: "
;Wid
e&*
PRINT #
1 , "
Pixels Tall: "
rHei
ghti*
CurrentByte=
1*
Comment?
_ M 1
object Header"*
CALL FormatData(Comraent$,HID?{lm
ageS ,CurrentByte,HeaderBytes ) , Ma
XBytes, 1)*
CurrentByte= CurrentByte+HeaderB
ytes*
FOR PLane=l TO Depths.*
Conmient$= "' BitPlane "+ STR?(PL
ane) *
CALL FormatData ( Comments ,M1D$( Im
age5,CurrentByte, BytesPerPlane) ,
MaxBytes, 1)*
CurrentByte= CurrentByte+BytesPe
rPlane*
NEXT PLane*
IF ObjectlsSprite THEN*
CommentS="' Sprite Color Map"*
CALL FormatData{Comment?,MlDS ( Im
ageS ,CurrentSyte, CoLorMapBytes) ,
MaxBytes, 1 )*
END IF*
CLOSE 1*
RETURN*
4
FiLeMaintenance :*
PRINT "shall I delete "jFiLename
S;" (y/n)";*
INPUT Response?*
IF UCASE$( Response? )= "Y" THEN*
KILL FiLename?*
PRINT FiLename?;" deleted."*
END IF*
PRINT*
RETURN *
*
EndJob:*
PRINT "Job complete: returning t
o AmigaBASIC."*
PRINT*
RETURN*
*
SUB ForroatData ( Note? , Dat? , DatLira
it.FiLeNo) STATIC*
PRINT # FiLeNo, Note?*
NoBytes" LEN(Dat?)*
NoFuLLLines= INT{ NoBytes/DatLimi
t)*
CurrentByte= 1*
FOR LineOut= 1 TO NoFuLLLines*
CALL PrintDataLine(MID?(Dat? ,Cur
rentByte.DatLimit) , FiLeNo)*
CurrentByte= CurrentByte+DatLimi
t*
NEXT LineOut*
IF CurrentByte<= NoBytes THEN*
BytesLeft= NoBytes-CurrentByte+1
*
CALL PrintDataLine(MID?{aat?,Cur
rentByte,BytesLeft) , FiLeNo)*
END IF*
END SUB*
*
SUB PrintDataLine( Dat?, FiLeNo) S
TATIC*
NoBytes= LENtDat?)*
PRINT # FiLeNo, USING " DATA
###";ASC(MID5(Dat5, 1,1) );*
FOR ELement= 2 TO NoBytes*
PRINT # FiLeNo, USING " , ###";A
SC{MID?(Dat?,ELement, 1)7;*
NEXT ELeraent*
PRINT # FiLeNo,*
END SUB*
Program 2: Demonstration
Zookeeper demonstration*
' Copyright 1987 COMPUTE 1 Public
ations, Inc.*
' All rights reserved*
PRINT"Copyright 1987" :PRINT"Corap
utel Publications, Inc."*
PRINT"A11 Rights Reserved ." :FOR
X=l TO 2000: NEXT X*
CLS*
MainLines*
GOSUB HouseKeeping*
GOSUB InitPLayer*
WHILE INKEy?=""*
IF MOUSEC0)<>0 then*
OBJECT. X 1, MOUSE(l)*
OBJECT. Y 1, HOUSE (2^4
END IF*
WEND*
END*
*
HouseKeeping:*
DEFINT a-z<
WINDOW I, "Ball Demo", (0,136)-(4S
0,186), 15*
PRINT "Manipulate object with mo
use. "*
PRINT "Hit any key to exit."*
RETURN*
*
InitPLayer:*
ByteCount= 106*
Image? = ""*
FOR Loop= 1 TO ByteCount*
READ ImageData*
Image? = Image?-i-CHR? ( ImageData ) *
NEXT Loop*
OBJECT. SHAPE 1, Image?*
OBJECT. ON*
RETURN *
July 1987 COMPUTEI 75
Sprite Designer
This full-featured sprite editor from a
Canadian reader lets you design Com-
modore 64 sprite shapes quickly and
conveniently. The program works
with either disk or tape.
Nearly every Commodore 64 pro-
grammer uses sprites at one time or
another. They're the movable
graphics shapes that add so much
to arcade games and other pro-
grams. If you have plenty of time,
you can draw the sprites on graph
paper, calculate the numbers that
make up each sprite, type those
numbers into a program, and hope
that you didn't make any mistakes
along the way. But "Sprite Design-
er" offers a much faster and easier
alternative, allowing you to design
sprites directly on the screen, with
convenient keyboard controls. You
can save a group of sprite shapes to
disk or tape and reload them for
future use, or you can create a series
of BASIC DATA statements con-
taining the sprite data. The pro-
gram supports both single-color
and multicolor sprites and it allows
you to work on a group of eight
sprites at a time.
Typing It In
Sprite Designer is written in ma-
chine language, so you must type it
in with the "MLX" machine lan-
guage entry program published
elsewhere in this issue. Read the
MLX instructions carefully before
you begin. When you run MLX,
you'll be asked for a starting ad-
dress and an ending address for the
data you'll be entering. Here are the
values to use for Sprite Designer:
Starting address:
Ending address:
84D0
9E47
After you've saved a copy of
the program, load it with LOAD
Andr6 Corbin
"PROGRAM", 8,1 for disk or
LOAD "PROGRAM-,1,1 for tape
(replace PROGRAM with the name
you used when saving the pro-
gram). To start the program, type
SYS 34000 and press RETURN,
Sprite Designer uses the mem-
ory in locations 8192-16383 to
store sprite shape data. This work
area can hold 16 groups of 8 sprites,
allowing you to have a total of 128
sprite shapes in memory at one
time.
Main Menu
When you start Sprite Designer, it
displays a main menu containing
the following choices:
1. INITIALIZE
2. EDIT
3. ANIMATE
4. SAVE
5. LOAD
6. BASIC DATA
7. MONOCHROME
8. MULTICOLORED
0. QUIT
To choose a menu option, sim-
ply press the number key next to
that option. For instance, the Edit
option lets you design a sprite. To
choose that option, you press the 2
key. Let's look at the menu options
in order.
1. Initialize
Sprite Designer always begins by
asking you if you want to initialize,
or clear out, the entire sprite work-
space. Since this action erases all
sprite data in memory, the program
asks you to confirm before it contin-
ues. If you press Y to answer yes,
every dot in all of the sprite shapes
is turned on. You can choose this
option at any time from the main
menu.
2. Edit
Option 2 (Edit) moves you to the
sprite-editing screen, which is di-
vided into three areas. In the lower
SPRIIES BESieilE« [1
••«•
••'*..
■•••••••
••••••••
••••••«•••
!•••
•••••lit
2«3«
!•••
••lift
ItMMI*
4*#S**
n «t «
tiMIM*
itiiittiii a
«»r-
» 1
!l it t%
••••
Uttti
•••■
mm\ i'
•••i
titt
••
••
i — HELP
"Sprite Designer" is a comprehensive
utility for designing sprite shapes for
use in games and animation. This photo
depicts the main editing screen.
right comer are two numbers that
show the sprite series you are
working on, as well as the individ-
ual sprite you are designing. Each
series contains eight sprites, and
the series are numbered 0-15, cor-
responding to their respective posi-
tions in memory. Within a series,
each of the eight sprites is given a
number 0-7.
In the upper right portion of
the screen you will see the shapes
of all eight sprites in the current
series. As you design a sprite, the
changes immediately appear in this
area.
The left portion of the screen is
the editing area, where you actually
design the sprite shape. This area is
24 X 21 spaces in size, with each
screen space corresponding to a dot
in the sprite shape.
Editing Functions
Once you have reached the editing
screen, you need to remember only
one command: The plus key (-h)
displays an entire screen of instruc-
tions for editing. To return from the
help screen to the editing screen,
press any key. The asterisk (*) re-
turns you from the editing screen to
the main menu.
When you enter the editing
76 COMPOTEI July 1 9S7
screen, the editing area contains the
shape of sprite 0 within the current
series. The function keys f3~f6
allow you to select any series and
any individual sprite within a se-
ries. Press f3 to go to the next series,
or f4 {SHIFT-f3) to go back to the
previous series. The f5 key ad-
vances to the next sprite in the se-
ries, while (6 moves to the previous
sprite. If you have designed a series
of shapes for animation, you can
hold down f3 or f4 to move through
the entire series quickly.
A reverse-video cursor indi-
cates your position in the editing
area. To move the cursor around,
press the cursor keys just as you
would normally. The size of the cur-
sor depends on whether you are
working on a single color or multi-
color sprite. For a single-color sprite,
the cursor is a square one space in
size; for a multicolor sprite, it is a
rectangle two spaces in size, con-
taining a number in the range 0-3.
You can turn on every dot in
the current sprite shape by pressing
CLR. For a single-color sprite, the
space bar lets you turn individual
dots on and off inside the editing
area. You can erase a dot by pressing
the space bar and turn a dot on by
pressing SHIFT-SPACE (hold down
SHIFT and press the space bar).
For a multicolor sprite, a dot
can have any of four different col-
ors, including the background color
(see "Multicolor," below). Use the
numbers 0-3 or the letter keys Z, X,
C, and V to color a dot with the
desired color.
You also can change the posi-
tion of the sprite shape within the
editing frame, shifting everything
one dot to the right, left, up, or
down. This is done by holding
down the Commodore key and
pressing W, Q, R, or E, respectively.
It is possible to flip a sprite
shape horizontally or vertically, by
pressing Commodore-I or Commo-
dore-K, respectively.
The f 1 key allows you to copy a
shape from one sprite to any other
shape in memory. First, use func-
tion keys f3-f6 to put the shape you
want to copy into the editing area.
Press fl to copy the shape; then use
f3-f6 to select the shape you want
to copy to. Press fl a second time,
and the shape is copied instantly.
The f2 key inverts every dot in
the current sprite shape. Use f7 and
f8 to change the sprite's color.
3. Animate
Option 3 (Animate) lets you cycle
through all the sprite shapes in as-
cending order, beginning with se-
ries 0, sprite 0. When you choose
this option, Sprite Designer
prompts you to enter a delay inter-
val which controls the speed of the
animation. The smaller the delay
interval, the faster the animation.
Press SHIFT-SPACE to stop the
animation and return to the main
menu. You can also use keys f3-f6
to cycle forward or backward
through the sprite shapes, as ex-
plained in the preceding section.
4. Save
Sprite Designer allows you to save
an entire set of sprite shapes to disk
or tape. Enter a filename when
prompted; then press D or T to
indicate disk or tape, respectively.
To cancel the operation, press RE-
TURN when prompted to choose
disk or tape. If a disk error occurs.
Sprite Designer prints the appropri-
ate error message at the bottom of
the screen.
5. Load
This option allows you to reload a set
of sprite shapes from disk or tape.
Follow the onscreen prompts as ex-
plained in the preceding section.
6. Add DATA Lines
Option 6 (BASIC DATA) lets you
save sprite shapes in the form of
BASIC DATA statements. This is
done by adding DATA lines to an
existing BASIC program. Activate
Sprite Designer and load your exist-
ing sprite shapes or design new
ones. Once the sprite shapes are in
memory, exit Sprite Designer and
type NEW. Then load the BASIC
program to which you wish to add
the sprites. Don't worry that the
program will disturb the sprite
shapes: Sprite Designer automati-
cally copied them into a safe place
(the RAM under BASIC ROM)
when you exited the program.
When the BASIC program
loads, do not run it. Instead, type
SYS 34000 to reactivate Sprite De-
signer. Do not initialize the sprite
shapes at this stage, or load any
shapes from disk or tape. Instead,
choose option 6. The program
prompts you to enter the series of
sprites that you wish to save. When
that is done, you also are given the
opportunity to include REMarks
along with the DATA lines.
After you answer those ques-
tions, the program prompts you to
enter a filename and indicate
whether to use disk or tape, as in
options 4 and 5. At this point.
Sprite Designer adds the DATA
lines to the program in memory and
saves the new program. If you wish
to cancel the operation, press RE-
TURN at the filename prompt with-
out typing anything.
After the save is complete, exit
Sprite Designer and type NEW (to
reset BASIC'S internal pointers). In
order to work properly, the BASIC
program to which you add the
DATA lines must not exceed 24
disk blocks (6144 bytes) in length.
7. Monochrome
Each series of eight sprites can be
either monochrome (single color) or
multicolor. You cannot mix mono-
chrome and multicolor sprites in
the same series. When you choose
option 7, a 16-color board appears
on the screen. To choose a color,
press the letter key matching that
color. That color will be used for all
eight sprites in the designated series.
8. Multicolor
Option 8 allows you to choose col-
ors for a series of multicolor sprites.
When you choose this option, a 16-
color board appears as described in
the previous section. Since a multi-
color sprite can have four colors,
the program asks you to select four
colors, numbered 0-3. When you're
drawing in multicolor mode, the
cursor contains a number to indi-
cate which color you are drawing
in. To switch to a different color,
press a number in the range 0-3. A
small color board to the right of the
drawing area shows you the current
drawing colors.
0. Quit
When you exit Sprite Designer, the
program copies all the sprite shapes
in the workspace into the "hidden"
RAM underlying the BASIC ROM
chip. This is done to make it easy
for you to alternate between using
your own BASIC programs and
Sprite Designer. You can load and
use a BASIC program after using
Sprite Designer, then reload and
J
July 1987 COMPUTEI 77
activate Sprite Designer again. If
a6E0:55 4C 54 49 43 4F 40 4F 0A
86E8:52 45 44 0D 10 ID 30 2E B5
8980:54 54 4F 4D 0D ID ID IF C7
8988:43 4F 40 40 4F 44 4F 52 00
you choose not to initialize the
86F0:20 51 55 49 54 0D 0D ID AF
8990:45 20 48 45 59 20 41 4E 28
work area, Sprite Designer copies
86F8:1D 41 43 54 49 4F 4E 20 D6
8998:44 2E 2E 20 20 9E 57 20 6B
the previously stored sprite shapes
8700:00 30 20 20 20 20 31 11 16
8708:11 11 11 90 9D 9D 90 9D IC
89A0:1C 52 49 47 48 54 20 9E 66
89A8:52 20 10 54 4F 50 00 IF 90
back into its workspace. This elimi-
87i0:9D 32 20 20 20 20 33 11 79
89B0:53 59 4D 40 45 54 52 59 BB
nates the need to reload the sprites
3718:11 11 11 9D 9D 9D 90 90 2C
89B8:20 20 20 20 20 20 20 20 CB
from disk or tape every time you
switch between a BASIC program
8720:90 34 20 20 20 20 35 11 0E
8728:11 11 11 9D 90 9D 9D 90 30
8900:20 20 20 20 20 9E 4B 20 24
8908:10 48 4F 52 49 5A 4F 4E AB
8730:90 36 20 20 20 20 37 11 A2
8900:54 41 4C 00 ID ID IF 43 97
and Sprite Designer.
8738:11 11 H 9D 90 90 90 9D 40
89D8:4F 4D 40 4F 44 4F 52 45 CE
8740:9D 9D 53 45 52 49 45 53 D9
89E0:20 48 45 59 20 41 4E 44 FB
Sprite Designer
8748:3A 11 90 9D 9D 9D 9D 9D 82
89E8:2E 2E 20 20 9E 49 20 10 IB
8750:90 53 50 52 49 54 45 3A 92
39F0:56 45 52 54 49 43 41 40 36
Please refer Jo the "MLX" article elsewhere In
8758:11 11 9D 9D 9D 9D 9D 90 FD
89F8:0D 00 ID ID 9E 46 31 20 OB
this Issue before entering Ihe following
8760:9D 2B 20 C3 03 20 48 45 BD
8A00:05 C3 03 20 10 43 4F 50 OF
program.
8768:40 50 00 0A 0A A8 A2 03 80
8A08:59 00 ID ID 9E 46 32 20 15
84D0:4C 35 85 20 95 88 C9 30 92
8770 :B9 87 87 48 08 CA 10 F8 3E
8A10:05 C3 03 20 10 52 45 56 IE
84D8:90 F9 C9 3 9 B0 F5 8D 21 0F
8778:68 AS 68 AA 18 20 F0 FF C0
8A18:45 52 53 45 00 ID ID 9E D8
84E0:85 A9 03 20 6B 87 38 E9 4D
8780:68 A8 68 4C IE AB 00 70 OF
8A20:46 33 20 05 03 C3 20 10 03
84E8:30 0A AA BD 23 85 85 FD F5
8788:86 01 00 81 86 03 02 01 F9
8A28:53 45 52 49 45 53 20 28 F6
84F0:E8 BD 23 85 85 FE 6C FD 99
8790:87 03 ID 21 85 0D 09 81 CO
8A30:9E 46 34 10 29 0D ID ID 43
84F8:00 20 F0 85 40 D3 84 20 5B
8798:91 16 10 61 87 16 10 OF 2C
8A38:9E 46 35 20 05 03 03 20 B5
8500 ;E4 FF F0 FB 60 00 A5 FB A5
87A0:93 10 02 IF 96 07 18 2A DA
8A40:1C 53 50 52 49 54 45 20 AD
8508:18 6D 05 85 85 FB 90 02 B2
87A8:96 07 IF 14 96 05 18 A7 8A
8A48:28 9E 46 36 10 29 0D 10 02
8510:E6 FC 60 00 A5 FD 18 6D 9C
87B0:94 10 02 13 95 12 02 A4 ID
8A50:1D 9E 46 37 20 05 03 03 38
8518sl3 85 85 FD 90 F4 E6 FE C3
87B8:97 10 02 4D 98 10 02 FF B5
8A53:20 IC 53 50 52 49 54 45 99
8520:60 20 00 07 94 E3 93 94 C3
87C0:9E 14 02 E4 91 00 19 IC SD
3A60:27 53 0D ID ID ID ID ID 06
8528:88 CE 97 BF 98 60 98 3E 85
8708:92 00 19 58 98 12 02 86 64
8A68:1D 10 ID 43 4F 40 4F 52 C7
8530:9B C7 95 88 96 A9 EF 8D FE
8700:87 14 02 F9 93 10 02 7F E8
8A70:20 28 9E 46 38 10 29 00 50
8538:28 03 A9 CI 80 18 03 A9 E5
8708:95 07 13 A6 95 15 02 4A 90
8A78:9E 43 4C 52 20 05 03 20 19
8540 :8E 20 D2 FF A9 08 20 D2 75
87E0:96 15 02 8C 99 14 02 B6 61
8A80:1C 44 45 4C 45 54 45 11 39
8548 iFF AD 86 02 80 FE 9F AD 05
a7E8:88 04 02 AF 89 0E 02 78 79
8A88:9D 9D 90 90 9D 90 53 50 BB
8550:20 D0 8D FD 9F AD 21 D0 F7
87F0:8A 11 17 85 9A 10 02 20 0B
8A90I52 49 54 45 11 11 90 90 A5
8558 :8D FC 9F AD SA 02 8D FF AF
87F8:9B 10 02 A9 D8 80 5B 86 EE
8A98:9D 90 90 90 9D 90 90 90 AD
8560 :9F A9 01 8D 86 02 BD 20 16
8800 :A5 22 80 00 08 8D 27 08 42
8AA0:9D 90 9E 2A 20 05 C3 03 02
8568 :D0 A9 15 8D 18 D0 20 F0 F6
8808:80 E7 OB 80 00 DB A2 25 0E
aAA3:20 10 4D 45 4E 55 11 11 CD
8570:85 A9 00 85 F9 85 FA 8D 6A
8810:90 01 08 9D 51 DS 90 CI 10
8AB0:11 9D 90 90 9D 90 9D 90 7P
8578:23 9F 20 90 FF A9 33 8D A4
8818:08 CA 10 F4 20 75 88 3D 90
8AB8:9D 05 53 54 52 49 4B 45 21
8580:21 85 20 68 8E A9 0D 85 C2
8820:50 D8 80 77 D8 A2 IF 90 E5
8AC0:20 41 20 48 45 59 2E 2E 09
8588 1 F7 85 F8 A9 30 8D 79 9F F4
8828:20 08 CA 10 FA 80 69 D8 99
8AC8:2E 00 20 48 66 A9 6B 30 BC
8590 :8D 7A 9F A9 80 8D. 8A 02 E0
8830 :8D D9 DB 20 87 88 8D E9 5F
8AO0:C8 04 8D 90 05 8D 08 06 7A
859e:A9 31 80 21 85 A9 03 20 81
8838: DA SD F7 DA A2 0C 9D EA 32
8AD8:aD 80 06 A9 73 80 EF 04 E5
85A0:6B 87 4C E3 93 20 44 E5 96
8340: DA OA 10 FA 80 95 08 8D 25
8AE0:aD B7 05 80 2F 06 8D A7 78
85A8:A9 04 8D 5B 86 A9 42 85 D5
8848 :9A 08 80 35 D9 80 3A D9 35
8AE8:06 A9 71 8D D4 07 A9 4 3 CB
8580:22 A9 70 8D 00 04 A9 6E EF
8850 :8D D5 09 80 DA 09 3D 75 80
8AF0IA2 25 9D C9 04 9D 91 05 AF
85B8:8D 27 04 A9 7D 8D E7 07 68
6858: DA 8D 7A DA A2 09 9D 14 BF
8AF8:90 09 06 90 81 06 OA 10 83
85C01A9 6D 8D C0 07 A2 25 A9 70
8860 :DB OA 10 FA A2 08 90 3C 70
8B00:F1 A9 72 80 94 06 A9 06 B7
8508:43 9D 01 04 9D 51 04 9D 15
8868: DB OA 10 FA A2 08 9D 80 08
8808:80 5B 86 A2 06 A0 14 A9 30
8SD0:C1 07 CA 10 F4 20 75 88 74
8870 :DB OA 10 FA 60 A2 16 A0 2E
8B10:42 85 22 A9 AS 20 58 86 85
85D8:A9 6B 8D 50 04 A9 73 8D 85
8878:00 A9 28 20 58 86 A2 16 33
8B18:A9 18 20 6B 87 A9 19 20 F9
85E0:77 04 A5 22 85 02 A9 00 07
8880 :A0 27 A9 28 40 58 86 A2 D6
8B20:6B 87 A9 lA 20 6B 37 A9 0D
85E8:20 6B 87 A5 02 85 22 60 F4
8888:14 A0 19 A9 78 4C 53 36 B5
8B28:00 85 06 AS C6 F0 FG A9 71
85F0:20 48 86 A9 6B 80 30 06 81
3890:12 20 92 90 00 A9 90 A0 47
8B30:00 85 06 40 94 88 30 31 AA
85F8iA9 72 80 62 04 A9 7D 8D 90
8898:88 18 20 IE AB A9 EC 85 3D
8B38:32 33 5A 58 43 56 20 A0 5A
8600:42 06 A2 10 A9 43 9D 31 CB
88A0:A2 20 E4 FF 00 0F A5 A2 58
8B40:11 91 ID 90 86 87 83 8A AF
8608:06 CA 10 FA A2 0A A0 12 00
88A8:O0 F7 AD 90 80 49 80 8D 06
3848:88 80 89 85 AB B3 82 Bl 15
8610:A9 78 20 58 86 A9 01 40 C2
8880:99 83 40 95 83 60 IF 44 57
3850 :A1 A2 93 2B 2A EB 88 EB 0A
8618: 6B 87 A9 FF 80 15 D0 20 74
8888:49 53 50 40 41 43 45 20 03
8B58:8B EB 8B EB 8B IF 8C 24 76
8620 :A5 85 A9 72 8D 69 04 A9 81
88C0:54 48 45 20 43 55 52 53 20
8B60:8C 29 8C 2E SC CI 8B 01 00
8628:71 80 D9 07 20 87 68 A9 D6
88C3:4F 52 20 20 9E 43 52 53 16
eB68:8B 49 80 52 80 5B 8C 60 AS
8630:68 8D E9 06 A9 73 8D F7 22
88D0:52 20 10 4B 45 59 S3 0D BE
8B70:8O 60 8C 8F 8C 9B 80 86 EA
8638:06 A2 00 A9 43 9D EA 06 79
88D8:0D ID 10 IF 40 4F 44 49 C6
3B78:8C 95 8C A3 8C AE 8C 02 02
8640 :CA 10 FA A9 02 4C 6B 87 50
88E0:46 59 20 20 20 4D 4F 4E 94
8B80:8C 08 60 F3 80 2B 80 5A 67
8648:A9 00 SD 15 D0 8D 21 D0 FC
a8E8:4F 43 48 52 4F 4D 45 20 FA
8B88:80 87 80 09 8E 38 BE CA 07
B650IA9 01 8D 86 02 4C A5 85 9E
88F0:20 9E 53 50 41 43 45 11 DB
8B90:8A 47 8E 00 20 lA 86 20 27
8658:85 FB A9 FF 85 FC A9 28 F7
88F8:9D 90 90 90 90 53 48 49 El
8B98:4D 8E 20 FF 84 80 93 8B 0B
8660 :8D 05 85 A5 22 91 FB 20 EF
8900:46 54 2D 53 50 41 43 45 79
8BA0:A0 IE A2 00 DD 36 3B F0 B3
8668:06 85 CA 10 F6 A5 22 60 27
8908:0D ID ID ID ID ID ID 10 13
eBA8:07 ES 88 10 F7 40 9A 88 41
8670:53 50 52 49 54 45 53 20 98
8910: ID ID IF 4D 55 40 54 49 7F
8BB0:8A 0A AA BD 55 88 85 FD A2
8678:44 45 53 49 47 4E 45 52 48
8918:43 4F 4C 4F 52 45 44 20 6F
3BB8:E8 BD 55 8B 85 FE 60 FD 16
8680:00 31 2E 20 49 4E 49 54 0C
8920:20 9E 30 20 20 20 31 20 F6
3BC0:00 AO IC D0 F0 03 40 9A 9A
8688:49 41 40 49 5A 45 00 ID C7
8928:20 20 32 20 20 20 33 11 94
8BC8:3B AD 93 8B C9 20 00 05 Bl
8690:10 32 2E 20 45 44 49 54 A2
8930r9D 90 90 9D 90 90 90 9D 43
8BD0:A9 20 40 07 8B A9 51 85 F6
8698:0D ID ID 33 2E 20 41 4E 00
8938:90 90 9D 90 90 9D IC 28 02
8BD8SB5 20 92 90 20 F9 90 20 58
86A0:49 4D 41 54 45 00 ID ID C8
8940 :9E 5A 10 29 20 28 9E 58 86
8BE0:49 91 20 72 90 20 20 90 02
86A8:34 2E 20 53 41 56 45 0D 8F
8948:10 29 20 23 9E 43 10 29 90
8BE8:4C 9A SB AD 10 00 00 03 El
86B0:1D ID 35 2E 20 4C 4F 41 2F
8950:20 23 9E 56 10 29 0D 00 63
8BF0;4C 9A SB AD 93 3B 29 0F 40
86B8:44 00 ID ID 36 2E 20 44 8F
8958:10 ID IF 4D 4F 56 45 20 78
8BFa:C9 02 D0 08 A6 FA BD 2? 03
8600:41 54 41 20 42 41 33 49 n4
8960:41 52 4F 55 4E 44 20 53 FE
8000:00 40 08 8C AA BO 24 9F 92
86C8:43 0D ID ID 37 2E 20 40 30
86D0:4F 4E 4F 43 48 52 4F 40 AE
8968:43 52 45 45 4E 20 20 20 02
8008:85 B6 20 92 90 AO 93 SB AC
8970 :9E 51 20 IC 40 45 46 54 45
8010:20 36 80 20 72 90 AD 93 IF
8608:45 0D ID ID 38 2E 20 40 49
8978:20 20 9E 45 20 10 42 4F 11
8018:8B 20 37 8C 40 E2 SB A9 50
78 COMPUTil July 1987
8C20:30
4C
30
8C
A9
31
4C
30
0E
8EC0:C9 10 D0 04 A9 00 85 F9
73
9158 :B0 0A A5 B5 C9 51 00 00 A8
8C28:8C
A9
32
4C
30
ec
A9
33
37
8EC8:20 56 BF 20 4E 92 20 67
E3
9160:20 6E 91 60 A5 B5 C9 20 IF
8030:80
93
aa
4C
EB
8B
4A
4A
97
8ED0:93 4C E6 8E 20 48 8F C6
98
9166:D0 03 20 6E 91 60 AS 23 IC
8C3a:B0
05
A9
20
4C
41
8C
A9
4C
8E08:F9 AS F9 C9 FF 00 E9 A9
F8
9170:49 FF 85 23 A5 22 45 23 7E
8C40:51
8C48:91
8C50:7A
8C58:4C
8C60:90
ac68: 90
85
20
8C
7A
AD
4C
B5
92
20
8C
IC
7A
20
90
92
20
D0
8C
F9
20
90
92
F0
20
90
58
20
90
14
92
4C
90
65
20
20
90
49
4C
90
72
72
20
10
5D
57
53
48
81
8EE0:0F 85 F9 4C CB 8E A2 00
B0
9178:49 FP A0 00 91 FB 85 22 FO
BEEBiAS F9 C9 0A 90 04 E8 E9
aEF0:0A 18 69 30 80 7A 9F 8D
8EF8:1D 07 BA 69 30 8D 79 9F
8F00:8D IC 07 60 C6 FA a5 FA
81
6C
93
3D
9180:60 43 4F 50 59 20 2E 2E 69
9188 :2E 2E 00 A9 04 20 6B 87 E7
9190:20 0B 90 A5 FB 85 AA A5 E3
9193 :FC 35 AB 20 FF 84 C9 86 3F
8C70:82
8C78:82
8C80:20
8C88:8E
8C90I04
8C98:4C
8CA0:4C
SCAB : 20
8CB0:90
8CB8:FB
8CC0:9A
8CC8:20
8CD0:91
8CD8:88
90
90
B9
20
8F
9A
A8
70
A0
88
8B
IE
FB
Bl
AD
20
8E
68
4C
as
8C
8F
3F
10
20
80
88
FB
IC
20
4C
8E
9A
A6
A6
4C
Bl
F7
SB
A0
Bl
2A
D0
90
89
4C
SB
FA
FA
9A
FB
20
91
3E
FB
91
F0
4C
8C
9A
20
FE
DE
SB
49
Bl
4C
Bl
2A
FB
03
9A
20
SB
27
27
27
20
FF
BF
9A
FB
91
08
20
8B
D4
20
SF
00
D0
0B
91
4C
8B
0A
FB
C8
D6
73
42
EA
70
4D
78
F2
03
A6
45
EF
85
lA
aF0e:C9 08 D0 0A A9 00 85 FA
8F10:20 B9 8E 20 68 8E AD 21
eF18:85 C9 33 F0 06 20 Bl 8F
8F20:20 67 93 20 3C 8F 60 C6
eF28:FA A5 FA C9 FF 00 E7 A9
8F30:07 85 FA 20 D4 8E 20 68
8F38:8E 4C 16 8F AS FA 18 69
8F40J30 80 7B 9F 80 44 07 60
8F48:20 64 8F BD 27 00 99 7C
8F50:9F 88 CA 10 F6 60 20 64
8F58:aF B9 7C 9F 9D 27 00 88
8F60:CA 10 F6 60 A5 F9 0A 0A
8F68:0A 18 69 07 A8 A2 07 60
8F70:AD IC D0 F0 06 20 6C 93
IC
7B
85
45
E6
IF
20
30
8A
99
EA
01
6E
B3
91A0:D0 09 20 B9 8E 20 68 8E 62
91A3:4C 9B 91 C9 8A 00 09 20 71
91B0:D4 8E 20 68 8E 4C 9B 91 DA
91B8:C9 87 D0 06 20 04 3F 4C 99
91C0:9B 91 C9 8B D0 06 20 27 0E
91Ca:eF 4C 9B 91 C9 85 D0 0F 68
91D0:20 0B 90 A0 3F Bl AA 91 8A
91D8:FB 38 10 F9 20 Bl 8F A9 4E
91E0:05 4C 6B 87 AB C3 C3 AE 22
91E8:11 9D 9D 9D 9D C2 30 20 02
91F0:C2 11 9D 9D 9D 90 C2 31 61
91F8:12 20 92 C2 11 9D 9D 9D 83
9200:90 C2 32 12 20 92 C2 11 ED
9208:90 9D 9D 9D C2 33 12 20 18
8CE0:C8
Bl
FB
4A
28
2A
91
FB
F7
8F78:4C D4 92 A9 79 85 FB A9
63
9210:92 C2 11 9D 9D 9D 90 AB 75
8CEa:88
88
88
10
E0
CA
10
DB
A8
8F80:D8 85 FC A9 28 80 05 85
AE
9218 :C3 C3 BD 00 C2 20 20 20 BE
BCF0:4C
8CFB:B1
8D00:6A
8D08:FB
BC
FB
91
08
80
4A
FB
88
20
91
ca
88
IE
FB
Bl
Bl
BD
ca
FB
FB
A0
Bl
6A
0A
3C
FB
91
28
97
AE
A4
76
8F8a:A6 FA BD 27 D0 85 22 29
8F90:0F D0 05 A9 0C 4C 9A 8F
8F98:A9 00 BD 21 D0 A2 14 A0
8FA0:17 A5 22 91 FB 88 10 FB
ED
FC
2A
30
9220:11 90 9D 9D 9D C2 20 20 IB
9228:20 11 9D 90 90 9D C2 20 38
9230:20 20 11 9D 90 9D 9D C2 CA
9238:20 20 20 11 9D 90 90 90 C6
8D10:6A
8D18tCA
91
10
FB
88
4C
88
BC
88
8C
10
20
E0
0B
34
40
8FAa:20 06 85 CA 10 Fl 4C 20
B7
9240:C2 20 20 20 11 90 9D 9D AC
DB
8FB0:90 AD IC 00 F0 03 4C D4
15
9248 :9D C2 20 20 20 00 A6 F9 3B
8D20:90
A2
00
AD
IC
00
F0
02
0F
8FB8:92 20 70 8F 20 0B 90 A9
28
9250:BO 68 9F 80 IC 00 D0 19 lA
aD28:A2
01
60
20
0B
90
A2
02
C4
8FC0:79 85 FD A9 04 85 FE A9
36
925a:A9 01 80 86 02 A9 10 20 A3
8D30;A0
02
Bl
FB
95
22
88
CA
23
8FC8;2a 80 13 85 A9 00 65 25
97
9260:6B 87 AD 00 08 29 0F D0 2D
8038:10
F8
A0
03
Bl
FB
88
88
F4
8FD0:A9 02 65 22 A0 00 A9 07
77
9268:07 A9 01 85 22 20 FB 87 05
8D40:88
91
FB
C8
C8
C8
C8
C0
CB
SFD8:85 23 84 02 A4 25 Bl FB
40
9270:60 20 58 97 A2 03 B9 28 0F
8D48:3F
00
Fl
A2
02
A0
3E
B5
64
aFE0:85 24 A4 02 06 24 90 05
67
9278:9F 9D 24 9F 86 CA 10 F6 D9
8050:22
91
FB
88
CA
10
F8
4C
BO
8FE8:A9 51 4C EF 8F A9 20 91
AE
92e0:AD 25 9F 80 25 D0 AD 27 81
8D58:BC
8C
20
0B
90
A2
02
A0
5D
8FF0:FD CS C6 23 10 EE E6 25
7B
9288 :9F 8D 26 00 AD 24 9F 80 70
8060 :3E
Bl
FB
95
22
88
CA
10
B8
aFF8:A9 3F C5 25 F0 0A C6 2 2
27
9290:21 00 A5 F8 4A B0 03 20 F9
8068 : FS
Bl
FB
C8
C8
C8
91
FB
01
9000:10 04 20 14 85 4C D0 8F
32
9298:82 90 20 C0 93 SD 86 02 15
8070:88
83
88
88
C0
FF
D0
Fl
25
9008 :4C 20 90 A6 FA BD F8 07
9B
92A0:85 02 A9 0F 20 6B 37 AS 92
8D78:A2
02
A0
02
B5
22
91
FB
EE
9010:65 FB A9 00 85 FC A2 05
92
92A8:02 85 22 A9 4B 35 FB A9 21
8080:88
CA
10
F8
4C
BC
8C
20
B2
9018:06 FB 26 FC CA 10 F9 60
BA
92B0:DA 85 FC A9 23 8D 05 85 E5
8088 :0B
90
AD
IC
D0
00
31
A0
91
9020 :AD 21 85 C9 33 00 01 60
EC
9288 :A0 00 A2 01 BD 24 9P 91 El
8090 :3E
A2
07
18
Bl
FB
2A
91
39
9028:20 C7 90 A0 00 AD iC D0
27
92C0:FB 20 06 65 E8 E0 04 D0 A8
8D98:FB
88
88
Bl
FB
6A
91
FB
A8
9030 :F0 03 4C 82 93 Bl FB C9
61
92C8:F3 AD 00 D8 C5 22 F0 03 7C
8OA0:C8
ca
CA
10
EF
Bl
FB
2A
15
9038:20 F0 07 C9 51 F0 03 4C
C3
92D0:20 FB 87 60 20 0B 90 A5 EF
8 DAS r 91
FB
88
A2
07
Bl
FB
2A
E7
9040:44 90 85 E5 A5 B5 C9 20
6B
92DB:FB 85 22 AS FC 85 23 A9 E9
3DB0:66
02
CA
10
FA
A5
02
91
DD
9048 :F0 05 A9 Dl 4C 51 90 A9
E7
92E0:79 85 FB 85 FD A9 04 85 20
8DB8:FB
88
88
10
D4
4C
BC
8C
E3
9050 :A0 91 FB A9 01 91 FD 60
EA
92E8:FC A9 06 85 FE A9 00 85 8E
8DC0:A0
3E
A2
03
18
Bl
FB
2A
E9
9058:A5 F7 C9 17 D0 04 A9 02
E0
92F0:24 85 26 A4 24 Bl 22 85 4A
8DC8:08
2A
66
22
28
66
22
CA
4B
9060:85 F7 E6 F7 60 A5 F7 C9
Fl
92F8:25 A9 02 8D 05 85 80 13 A0
8DD0:10
F5
88
88
A2
03
18
Bl
0E
9068:03 D0 04 A9 18 85 F7 C6
E7
9300:85 A2 03 A9 00 85 02 06 AD
8DD8:FB
2A
08
2A
66
23
28
66
96
9070 :F7 60 A5 F8 C9 16 D0 07
41
9308:25 26 02 06 25 26 02 A5 57
8OE0:23
CA
10
F5
A5
22
91
FB
76
9078 :A9 00 85 F8 20 56 90 E6
19
9310:02 86 02 20 46 93 20 06 E2
8DE8:Ce
C8
A5
23
91
FB
88
A2
Bl
9080 :F8 60 A5 F8 C9 01 D0 07
75
9318:35 20 14 85 A6 02 CA 10 C7
8OF0t03
Bl
FB
2A
08
2A
66
02
D3
9088 :A9 19 85 F8 20 65 90 C6
83
9320:E2 E6 26 A9 03 C5 26 00 IE
aDF8:28
66
02
CA
10
F5
A5
02
54
9090 :F8 60 20 C7 90 A0 00 AD
7B
9328:12 A9 00 85 26 A9 10 60 A0
aE00:91
FB
88
88
10
BC
4C
BC
47
9098:1C 00 F0 IF A9 51 91 PB
BO
9330:05 85 3D 13 35 20 06 85 5C
8E08:8C
20
0B
90
A0
3C
A2
00
19
90A0:A5 B6 91 FD A9 01 3D 05
C5
9338:20 14 85 E6 24 A9 3F C5 9F
8E10:B1
FB
9D
3C
03
C8
E8
Bl
3B
90A8:85 8D 13 85 20 06 85 20
EE
9340:24 D0 B0 4C 20 90 A8 C9 E6
8E18:FB
9D
3C
03
C8
EB
Bl
FB
9B
90B0:14 85 A9 51 91 FB A5 B6
06
9348:02 D0 08 A6 FA BD 27 00 FD
8E20:9D
3C
03
E8
88
88
88
88
0A
90B8:91 FD 60 A5 B5 91 FB A6
IB
9350 :4C 56 93 B9 24 9F A0 00 22
8E2a:a8
10
E5
A0
3F
B9
3C
03
B0
90C0:FA BD 27 00 91 FO 60 A9
AF
9353:91 FD C8 91 FD A0 00 A9 16
8E30:91
FB
88
10
F8
4C
BC
8C
26
90C8:00 85 FB 85 FD A9 04 85
47
9360:51 91 FB C8 91 FB 60 AD 3B
aE3a:20
0B
90
A0
3E
A9
FF
91
6E
90D0:FC A9 D8 85 FE A9 28 80
CA
9368 :1C D0 F0 08 A6 FA BD 27 34
8E40:FB
88
10
FB
4C
BC
ec
20
CD
9008:05 85 8D 13 85 A6 F7 F0
68
9370 :D0 BD 73 OA 60 46 22 08 E7
8E48:48
8F
4C
F9
84
20
85
BE
D4
90E0:0A 20 06 85 20 14 85 CA
4F
9378:46 23 B0 04 28 4C 75 93 D2
8E50:20
A5
8E
20
68
8E
20
56
CE
90E6i4C DF 90 A5 F8 80 05 85
22
9380:23 60 A2 03 Bl FB C9 51 BA
8E58:8F
20
4E
92
20
E6
BE
20
12
90F0;8D 13 85 20 06 85 4C 14
43
9388:00 06 Bl FD 29 0F 85 B6 F6
8E60:3C
8F
20
67
93
4C
Bl
8F
BA
90F8iB5 A5 FS 85 29 C6 29 A9
IE
9390:BD 24 9F C5 B6 F0 05 CA 3E
8E68iA5
F9
0A
0A
0A
69
87
A8
66
9100:07 25 29 85 29 A5 F7 85
C2
9398:10 F6 A2 02 BA 18 69 B0 32
8E70:A2
07
9D
F8
07
88
98
CA
3A
9108 :2A C6 2A C6 2A C6 2A A5
0A
93A0:91 FB 20 C0 93 91 FD 35 04
8E78:10
F8
AD
21
85
C9
33
F0
4E
9110:2A 18 65 2A 65 2A 85 2A
A6
93A8:22 A9 01 8D 05 85 8D 13 B0
8E80:03
20
Bl
8F
60
A9
FF
8D
80
9118 :A5 FS 85 FB C6 FB A9 18
4E
93B0:85 20 06 85 20 14 85 A9 CI
8E88:10
00
A9
0A
85
22
A9
32
Fl
9120:25 FB 4A 4A 4A 18 65 2A
6A
93B8:A0 91 FB A5 22 91 FD 60 22
8E90:85
23
A2
0E
A5
23
9D
00
63
9128:85 2A 20 0B 90 A5 2A BD
4A
93C0:AD 24 9F C9 01 00 05 A9 57
8E98:D0
CA
CA
A5
22
9D
00
D0
DC
9130:05 35 20 06 85 A0 00 Bl
FB
93C8:00 4C CE 93 A9 01 60 49 71
8EA0!CA
CA
10
F0
60
A9
AA
A2
88
9138:FB 85 22 A9 30 A6 29 F0
7B
93D0:4E 49 54 49 41 4C 49 5A B8
8EA8:0E
38
9D
01
D0
CA
CA
9D
83
9140:05 4A CA 4C 3F 91 85 23
05
93D8:4S 20 28 59 2F 4E 29 20 6A
8EB0:01
00
E9
20
CA
CA
10
F2
56
9148:60 A5 23 48 A5 22 48 20
54
93E0:3F 20 00 A9 06 20 6B 87 59
8EB8:60
20
48
8F
E6
F9
A5
F9
74
9150:75 93 68 85 22 68 85 23
59
93E8:20 3C 94 F0 06 20 4D 94 B0
July 1987 COMPUni 79
93F0;4C F9 84 20 21 9E 4C P9 65
9688:20 61 97 A9 07 20 6B 87 02
9920:68 87 20 60 A5 A2 m BD 6A
93F8:84 51 55 49 54 20 28 59 C2
9690 ;A9 08 20 6B 87 A9 16 20 7E
9928:00 02 09 20 F0 04 E8 4C CC
9400:2F 4E 29 20 3F 20 00 A9 9F
9698:6B 87 20 6B 97 20 58 97 90
9930:27 99 E0 00 D0 0F 68 68 75
9408:13 20 6B 87 20 3C 94 F0 B4
96A0:A2 03 B9 28 9F 9D 24 9F F4
993S:AD 21 85 C9 36 00 03 20 F2
9410 :DF 20 34 9E AD FF 9F 8D DB
96A8:88 CA 10 F6 A2 03 8E 49 C5
9940:21 9E 40 F9 84 8A A2 00 68
9418:8A 02 AD FE 9F 80 86 02 EE
96B0:96 BO 24 9F 20 87 97 AE 14
9948:A0 02 20 BD FF A9 20 A2 BS
9420 :AD FD 9F 80 20 D0 AD FC 09
9658:49 96 CA 10 Fl A9 01 8D 50
9950:23 9D FF 9E CA 10 FA A9 9C
9428:9F 80 21 D0 A9 93 20 D2 64
96C0:86 02 AD 49 96 18 69 30 14
9958:0E 20 6B 87 A9 11 20 6B BD
9430 :FF A9 ED BD 28 03 A9 47 42
9603:80 46 96 A0 18 20 4C 97 9C
9960:87 20 95 88 C9 54 F0 07 23
9438:8D 18 03 00 20 95 88 C9 CB
96O0:A9 45 A0 96 20 IE AB 20 92
9968 :C9 44 F0 03 40 36 99 85 03
9440:59 D0 03 A9 FF 60 C9 4E A8
9608 :FF 84 09 14 D0 03 4C F9 06
9970:02 20 D2 FF AS 02 09 54 24
9448:00 F2 A9 00 60 A9 00 85 FA
96E0:84 C9 0D F0 23 09 03 00 8A
9978: D0 0A A9 12 20 6B 87 A9 54
9450 :FB A9 20 85 FC A9 80 8D 5B
96E8S03 4C 26 97 C9 41 90 E7 45
9980:01 40 86 99 A9 08 65 02 2C
9458:05 85 A2 IF A0 00 A9 FF 04
96F0:C9 51 B0 E3 38 E9 41 20 B7
9988 :AA A9 04 60 55 4E 49 54 CC
9460:91 FB 88 D0 FB 20 06 85 61
96F8:96 97 AE 49 96 90 24 9F D4
9990:20 4E 4F 54 20 52 45 41 AC
9468:20 06 85 CA 10 EE A9 01 11
9700:20 87 97 A9 01 BD 86 02 FB
9998:44 59 00 09 05 00 08 A9 06
9470 :A2 7F 9D 7C 9F CA 10 FA 89
9708 :A0 18 20 40 97 A9 46 A0 E6
99A0:17 20 6B 87 A9 FF 60 AS 01
9478:A2 07 9D 27 D0 CA 10 FA A7
9710:96 20 IE AB EE 49 96 AD 88
99A8:02 09 08 F0 03 A9 00 60 7E
9480 :A2 3F 9D 28 9F CA 10 FA 44
9718:49 96 C9 04 00 05 A9 00 F8
99B0:A9 08 20 B4 FF A9 6F 20 AF
9488:A9 00 A2 0F 9D 68 9F CA 64
9720:80 49 96 4C 02 96 20 58 09
99B3:96 FF A9 00 85 22 20 A5 07
9490:10 FA A9 00 85 F9 85 FA CF
9728:97 A2 03 BD 24 9F 99 28 03
99O0:FF C9 00 F0 0F 85 23 A5 91
9498:A9 33 8D 21 85 20 68 8E 33
9730 :9F 88 CA 10 F6 20 64 8F 3C
9908:22 AA AS 23 90 FF 9E E6 AF
94A0:A9 0D 85 F7 05 F8 60 41 24
9738: AD 26 9F 99 70 9F 88 OA 93
9900:22 40 BE 99 20 AB FF A9 F2
94A8:20 05 12 20 20 20 20 92 BE
9740:10 F6 A9 FF A6 F9 90 68 2B
9908 :0E 20 6B 87 A9 FF 85 7A 03
94B0:05 20 20 20 20 45 20 9C 5D
9748 :9F 40 F9 84 AD 49 96 18 B9
99E0:A9 9E 85 7B 20 79 00 20 FF
94B8:12 20 20 20 20 92 05 20 6E
9750:69 07 AA 18 20 F0 FF 60 Fl
99E8:6B A9 AS 14 60 64 0A 01 DB
9400:20 20 20 49 20 81 12 20 E5
9758 :A5 F9 0A 0A 18 69 03 A8 CF
99F0:20 53 45 52 49 45 53 20 FC
94C8:20 20 20 92 05 20 20 20 40
9760:60 A9 0A 20 6B 87 A9 9B 45
99F8:20 20 00 20 53 50 52 49 10
9400:20 4D 20 98 12 20 20 20 5C
9768:40 6B 87 A2 00 A5 F9 09 08
9A00:54 45 20 30 00 20 53 50 2F
9408:20 92 05 00 ID ID 42 20 2A
9770 :0A 90 04 ES E9 0A 18 69 E8
9A08:52 49 54 45 20 31 00 20 70
94E0:90 12 20 20 20 20 92 05 88
9778:30 80 ID 96 8A 69 30 80 18
9A10:53 50 52 49 54 45 20 32 0C
94E8:20 20 20 20 46 20 IE 12 31
9780:10 96 A9 09 4C 6B 87 8D D5
9A18:00 20 S3 50 52 49 54 45 6A
94F0:20 20 20 20 92 05 20 20 41
9788:86 02 A0 lA 20 40 97 A9 3C
9A20:20 33 00 20 53 50 52 49 FD
94FS:20 20 4A 20 95 12 20 20 DA
9790 :3E A0 96 40 IE AB 09 01 02
9A2a:S4 45 20 34 00 20 53 50 97
9500:20 20 92 05 20 20 20 20 C7
9798:00 03 A9 00 60 09 00 00 21
9A30:52 49 54 45 20 35 00 20 B5
9508:4E 20 99 12 20 20 20 20 98
97A0:02 A9 01 60 49 4E 54 45 D2
9A38:53 50 52 49 54 45 20 36 38
9510:92 05 00 43 20 IC 12 20 AF
97A8:52 56 41 40 20 49 4E 20 66
9A40:00 20 53 50 52 49 54 45 92
9518:20 20 20 92 05 20 20 20 91
97B0:36 30 54 48 00 10 ID 4F 70
9A4a:20 37 00 20 35 33 32 38 70
9520:20 47 20 IF 12 20 20 20 94
9788:46 20 53 45 43 4F 4E 44 0A
9A50:37 2D 39 34 00 20 35 33 F4
9528:20 92 05 20 20 20 20 4B B7
97C0:20 28 31 20 54 4F 20 32 84
9A58:32 38 31 20 35 33 32 38 B0
9530:20 96 12 20 20 20 20 92 A9
97C8:35 35 29 3A 20 00 A5 F9 EE
9A50:35 2C 43 4F 40 4F 52 53 30
9538:05 20 20 20 20 4F 20 9A 0D
9700:48 A5 FA 48 A5 F8 48 A9 BC
9A6a:2C 35 33 32 38 36 00 F0 16
9540:12 20 20 20 26 92 05 00 E4
97D8:0C 20 6B 87 20 60 A5 A2 60
9A70:99 FB 99 05 9A 0F 9A 19 54
9548:10 ID 44 20 9F 12 20 20 79
97E0:00 BD 00 02 09 20 F0 04 54
9A78:9A 23 9A 20 9A 37 9A 41 12
9550:20 20 92 05 20 20 20 20 18
97E8:Ea 40 El 97 E0 04 B0 E7 B5
9A80:9A 4B 9A 55 9A 9E 54 59 OF
9558:48 20 9E 12 20 20 20 20 86
97F0:A9 00 85 7A A9 02 85 7B 29
9A88:50 45 20 9F 2A 9E 20 54 95
9560:92 05 20 20 20 20 4C 20 56
97Fa:20 79 00 20 6B A9 A5 15 FA
9A90:4F 20 53 45 40 45 43 54 86
9568:97 12 20 20 20 20 92 05 95
9800:00 D5 A5 14 F0 3B 06 14 IB
9A98:05 20 20 20 30 30 20 20 01
9570:20 20 20 20 50 20 9B 12 06
9808:A9 FF 45 14 85 14 20 lA CE
9AA0:20 30 31 20 20 20 30 32 2E
9578:20 20 20 20 92 05 00 53 BD
9810:86 A9 00 85 F9 85 FA 20 43
9AA8:20 20 20 30 33 00 ID ID 22
9580:50 52 49 54 45 53 20 C3 52
9818:4D 8E A5 14 85 A2 20 9F 20
9AB0:9E S3 45 52 49 45 53 20 FO
9588 :C3 20 30 31 32 33 34 35 B2
9820 :FF 8A C9 A0 F0 IB 09 20 DE
9AB8:4P 52 20 9F 52 45 54 55 CD
9590:36 37 11 90 9D 9D 90 9D DC
9828 :D0 0A A9 00 85 06 20 FF 01
9AC0:S2 4E 9E 2C 05 20 20 30 62
9598:9D 90 9D 12 20 20 20 20 B0
9830:84 4C lA 98 AS A2 D0 E6 C3
9AC8:34 20 20 20 30 35 20 20 DC
95A0:20 20 20 20 92 00 9E 54 10
9838:20 04 8F 20 Bl 8F 40 lA EC
9AD0:20 30 36 20 20 20 30 37 04
95A8:59 50 45 20 41 20 4C 45 A7
9840:98 68 85 F8 68 85 FA 68 CF
9AD8:0D ID ID 9F 53 54 4F 50 54
95B0:54 54 45 52 20 4F 52 20 EB
9848:85 F9 4C F9 84 46 49 4C FF
9AE0:20 9E 54 4F 20 42 55 49 4B
95B8:9F 53 54 4F 50 9E 20 54 99
9850:45 4E 41 4D 45 3A 20 00 08
9AE8:4C 44 20 05 20 20 20 20 0D
95C0:4F 20 45 4E 44 05 00 20 7F
9858:54 41 50 45 20 4F 52 20 65
9AF0:20 30 38 20 20 20 30 39 66
95C8:61 97 A9 IS 20 6B 87 20 EE
9860:44 49 53 4B 20 28 54 2F 9E
9AF8:20 20 20 31 30 20 20 20 BF
9500 :6B 97 A9 14 20 6B 87 20 EB
9868:44 29 3A 20 00 20 ID 99 A3
9600:31 31 0D ID ID 9F 44 45 04
9508:64 8F B9 7C 9F 90 5E 09 23
9870 :A0 00 20 BA FF A2 00 A0 CC
9B08:4C 20 9E 54 4F 20 43 41 49
95E0:88 CA 10 F6 20 FF 84 C9 48
9878:20 A9 ED 3D 28 03 A5 2D 80
9B10:4E 43 45 4C 05 20 20 20 BS
95E8:03 F0 26 C9 41 90 F5 C9 35
9880:48 A5 2E 48 A9 00 20 05 EC
9B18:20 20 20 31 32 20 20 20 F0
95F0:51 B0 Fl 38 E9 41 20 96 DD
9888 :FF 68 85 2E 68 85 20 A9 04
9B20:31 33 20 20 20 31 34 20 11
95F8:97 85 22 20 64 8F A5 22 66
9890 :EF 80 28 03 20 9B 99 C9 BE
9B28:20 20 31 35 00 52 45 40 12
9600:99 7C 9F 88 CA 10 F9 A9 C9
9898:14 B0 02 A2 7F BD 00 40 B7
9B30:41 52 4B 53 20 28 59 2F BE
9608:00 A6 F9 90 68 9F 4C 07 lA
98A0:9D 7C 9F CA 10 F7 A2 3F 45
9B3a:4E 29 20 3F 20 00 A9 IB 48
9610:95 4C F9 84 53 45 52 49 40
98A8:BD 80 40 9D 28 9F OA 10 20
9B40:20 6B 87 A9 00 85 69 85 5C
9618:45 53 3A 20 20 20 00 30 B7
98B0:F7 A2 0F BD 00 40 9D 68 EE
9B48:6A 85 6B A9 01 85 60 A0 BS
9620:11 90 31 11 90 32 11 9D E9
98B8:9F CA 10 F7 40 F9 84 A2 E3
9B50:00 A9 03 85 60 A2 04 A9 52
9628:33 00 12 20 20 11 90 9D 51
98C0:7F BD 7C 9F 90 00 40 CA E2
9B58:51 99 94 06 98 48 8A 48 D4
9630:20 Dl 11 90 9D 01 20 11 63
9808:10 F7 A2 3F BD 28 9F 90 B3
9B60:20 FF 84 85 6E 68 AA 68 63
9638:9D 9D 01 Dl 92 00 12 20 CB
9800:80 40 CA 10 P7 A2 0F BD D2
9B68:Aa AS 6E 09 14 00 03 4C FD
9640:20 20 20 92 00 12 20 92 CD
9808:68 9F 90 00 40 CA 10 F7 2B
9B70:F9 84 09 00 00 03 4C A0 9B
9648:00 00 9E 54 59 50 45 20 45
98E0:20 ID 99 A0 FF 20 BA FF 9C
9B78:9B 09 03 D0 03 40 BO 9B BD
9650:41 20 4C 45 54 54 45 52 D4
98E8:A5 2B 48 A5 20 48 A9 00 F0
9BS0:C9 2A 00 08 B9 95 06 49 48
9658:20 4F 52 20 9F 52 45 54 DA
98F0:85 2B A9 20 85 20 A2 00 09
9888:80 99 95 06 B9 96 06 49 F6
9660:55 52 4E 9E 20 00 10 ID 6D
98F8:A0 40 20 00 99 68 85 2C 05
9B90:80 99 96 06 AS 6A 45 60 6F
9668:9F 53 54 4F 50 9E 20 54 4B
9900:68 85 2B 20 9B 99 09 14 IB
9B98:85 6A AS 69 45 6B 85 69 04
9670 :4F 20 45 4E 44 20 20 9F 8D
9908 :B0 06 4C F9 84 A9 ED 80 A6
9BA0:06 60 26 6B A9 20 99 94 07
9678:44 45 40 9E 20 54 4F 20 90
9910:28 03 A9 2B 20 D8 FF A9 0E
9BA8:06 08 C8 08 C8 C8 CA 00 8A
9680:43 41 4E 43 45 40 05 00 03
9918:EF 80 28 03 60 A9 00 20 BF
9BB0:A6 98 18 69 14 A8 06 60 39
80 COMPUTE! July 1987
9BBB
9BC0
9BC8
9BD0
9BD8
9BE0
9BEa
9BF0
9BF8
9C00
9C08
9C10
9C18
9C20
9C28
9C30
9C38
9C40
9C48
9C50
9C58
9C60
9C68
9C70
9C78
9C80
9C8e
9C90
9C98
9CA0
9CA8
9CB0
9CB8
9CC0
9cce
9CD0
9CD8
9CE0
9CE8
9CF01
9CF8;
9D00:
9D08i
9D10i
9D18:
9D20;
9D28:
9D30
9D38
9D40:
9D48:
9D50:
9D58:
9D60:
9D6a;
9D70:
9078
9D80:
9D88:
9D90:
9D98:
9DA0:
9 DAS
9DB0
9DB8
9DC0
9DCa
9DD0:
9DDa
9DE0
9DE8t
9DF0
9DF8
9E00
9E08
9E10
9E18
9E20
9E28:
9E30
9E38
9E40
10 9B
69 D0
:F9 84
;6B 87
:2E A5
!85 65
:66 20
iA9 F2
t9E A9
26A B0
:10 D0
:A5 6D
:E9 0A
:09 30
:0A 0A
sFC 18
:D0 06
:A9 00
:0A 9D
105 85
:85 2A
106 9D
:85 FC
:05 85
FB 29
A9 01
08 85
20 06
9F 85
05 85
05 85
A2 05
A9 00
A9 02
A5 FD
4C 4B
07 C5
20 F0
20 3C
2D 18
B0 01
34 9E
85 64
00 85
0B E6
F2 AC
C9 0A
09 30
80 F8
69 80
69 80
20 39
85 62
20 03
A9 20
A2 05
A9 7C
A5 6D
20 06
0F 91
80 05
2A A2
90 A9
FC A5
20 06
85 29
20 72
A8 91
8D 13
20 12
99 A0
A4 FE
C9 14
F9 84
63 8D
63 90
F0 2F
04 02
26 90
90 A2
F0 08
25 90
62 20
02 60
86 61
65 90
00 02
61 B9
F8 AS
FE 60
90 20
20 42
29 29
4C 96
85 2A
A2 00
F6 9E
ED 99
FE F5
03 00
64 B0
C8 B9
C8 C0
80 EB
A2 00
EE EB
Fl EE
D0 E6
80 0E
01 60
AD 0E
60 20
9D A9
9D 4C
90 A9
90 00
85
9E
FF 20
20 0D
B0 EA
A5 64
02 02
02 E6
20 F2
A4 62
C8 B9
05 A0
90 00
20 43
F2 9C
CA A9
E8 8A
02 E6
A5 66
00 02
65 85
86 61
06 85
90 C6
03 00
90 20
A2 05
A9 30
80 F7
90 0A
9E 4C
EC A6
06 C8
F5 9E
04 D0
9D 80
AD FF
90 EE
EC 90
60 AD
DC AS
AS 01
OC 09
03 9E
20 8D
12 9E
A0 8D
00 00
9B A9
6A D0
85 A9
94 85
69 FE
88 34
A9 30
A9 2C
60 46
60 A5
B8 90
90 04
80 F9
99 A5
20 10
85 FC
9D 4C
20 06
9E A9
85 29
20 72
85 FB
0A 0A
85 A0
FB 88
85 85
05 20
28 85
60 0A
85 A9
A9 04
90 4C
FO C8
35 20
A5 FE
F0 85
BA FF
99 20
20 21
80 03
18 69
64 60
9C A9
B9 6F
6F 9A
00 B9
02 E8
9D E6
A9 83
00 9D
18 65
66 A5
80 01
91 FD
FD A5
A0 00
C6 2A
29 F0
06 20
39 9D
4C 72
80 F5
9E Bl
38 FD
AF 9D
61 Bl
09 0A
90 00
F4 60
EE 90
FF 80
EE 9D
EE EF
0E DC
01 29
09 01
01 80
A9 A0
EF 90
A9 20
EF 90
00 00
8C
2E 3A
10 6F
00 CS 66
03 4C 07
IC 20 5C
70 A4 A7
85 FD 08
FE 84 33
85 63 48
8D F8 02
69 66 FF
6D C9 11
A2 00 IE
EB 38 EF
99 8A FE
60 0A 73
90 AS 26
A5 70 FE
4A 9C 42
9D 20 99
01 80 40
A9 10 08
90 20 A9
A9 9F 10
0A 80 49
07 Bi 60
10 F7 0F
29 A9 0F
7 2 9D 01
FB A9 A2
0A 80 32
01 80 84
85 2A 9B
03 90 68
91 FD 29
14 85
85
20
A6 FD 2A
9B 99 IF
9E 40 OF
02 AS 65
01 85 95
AS 70 20
8F 80 F2
9A 8D D6
8D 27 AA
FF FF 64
C8 4C 23
62 E6 Dl
80 04 4F
00 02 01
65 as 8B
65 8D 33
02 A4 48
88 10 80
66 85 67
20 A0 10
00 F2 17
18 A5 5F
06 90 6A
A9 10 F0
9D 60 80
9E 80 74
FB DD 09
ED 99 2B
E8 E0 30
FB C9 40
B0 01 88
02 E8 61
A9 00 B2
A0 20 B9
FF FF 61
CA D0 95
90 88 5B
29 FE 7B
FE 85 B5
85 01 03
0E DC 13
80 EC B7
20 DE 90
80 EC 51
40 DE 09
00 00 40
Disk Expander
For Apple II
Boris Troyonovsky
Everyone can use more disk space.
This program allows you to format
DOS 3.3 disks with an extra track of
space, giving you 1 6 more disk sectors
for storage.
Here is a utility that gives you extra
storage space on any DOS 3.3 disk.
After formatting a disk with this
program, you have 16 extra disk
sectors for storing programs and
other files. Type in the program and
save it to disk.
When you run the program, it
waits for you to press a key. Insert a
blank disk into slot 6, drive 1 (this is
the built-in drive on Apple Ik com-
puters). Press any key to begin.
When the drive stops spinning, the
disk has been formatted with 16
extra sectors. Now you can save a
HELLO program On the disk or use
it as you would a normal DOS 3.3
disk. The FID program on the DOS
3.3 System Master disk can be used
to verify that the disk really does
contain the extra space.
Disk Expander for Apple II
For instructions on entering this program,
piGose refer to "COMPUTEI's Guide to Typing
in Programs" elsewhere In this Issue.
BA 10 D« => CHR« (4) : eOSUB 200
Ifl 20 TEXT : HOME : HTAB 17: PRI
NT "D.M.E.3. ": VTAB l! FOR
X - 1 TO 16: HTAB X: PRIN
T "-";: NEXT X: FOR X - 25
TO 40J HTAB X: PRINT "-";
: NEXT X
BF 30 VTAB 13: PRINT "INSERT DIS
K INTO SLOT 6, DRIVE l"l PR
INT "AND PRESS ANY KEY": B
ET A»
91 40 PRINT
3D 50 REM «*«EXPAND DISK CAP.««t
3? i0 POKE 48894, PEEK (48894 > +
1
B9 70 PRINT D»;"INIT HELLO, D1,S6
": PRINT D«j "DELETE HELLO"
3C B0 POKE 48894, PEEK (4B894) -
1
2fl 90 SS = 0:SE = BsBU = 8192: OP
- 1:TR " 17i BD3UB 130
16 100 POKE 8192 + 196,253: POKE
S192 + 197; 255: POKE 819
2 + 52,36
fi 110 SS =" 0:SE - 0jBU - 8192:0
P - 2:TR • 17! BOSUB 130
AD 120 GOTO 20
;C 130 REM *t*DISK ACCESSttt
85 140 FOR SA " SS TO SE
F7 150 POKE 788, TR: POKE 789, SA:
POKE 796, OP
C7 160 HB = INT (BU / 256): LB «
BU - (MB « 256)
6E 170 POKE 792, LB: POKE 793, HB
27 180 CALL 768 :BU = BU + 256: N
EXT SA
23 190 RETURN
37 200 FOR I = 768 TO 822: READ
A: POKE I, A: NEXT 1: RETU
RN
9B 210 DATA 169,3,160,16,32,217,
3,96,0,0,0
7C 220 DATA 0,0,0,0,0,1,96,1,0,1
7,13
£2 230 DATA 48,3,0,32,0,0,1,0,23
4,96,1
2f 240 DATA 0,0,0,0,0,0,0,0,0,0,
0
JC 250 DATA 0,0,0,0,0,1,239,216,
0,0,0 ©
July 1987 COMPUTE! 81
1571 utility Package
Dick Smit
Among other exciting features, the
Commodore 1571 disk drive has the
ability to perform high-speed burst
mode operations and can read MFM
(non-Commodore) disks for CP/M
mode. The four programs included
with this article let you copy MFM-
format disks, read and alter the infor-
mation on an MFM disk, and access
all of the 1571's special features from
BASIC. A Commodore 128 with 1571
disk drive and 80-column monitor is
reijuired.
The Commodore 1571 is the most
versatile disk drive ever offered by
Commodore. It can operate as a
1541 drive, giving you access to the
huge library of existing Commo-
dore 64 software. With a Commo-
dore 128 in 128 mode, it can also
transfer data in burst mode at much
higher speeds than a 1541 disk
drive. Commodore disks use a re-
cording system known as GCR
(Group Code Recording), but
CP/M disks for many other com-
puters use a different system
known as MFM (Modified Frequen-
cy Modulation). Since the 128 can
operate as a CP/M computer, the
1571 provides the ability to read
and write MFM-format disks.
CP/M is one of the most widely
used microcomputer operating sys-
tems, and vast amounts of public
domain CP/M software are avail-
able on MFM disks. The IBM PC
and compatible computers also use
MFM disks.
The 157rs special capabilities
are impressive, but using them
from BASIC is not always so easy.
Some of the most useful 1571 rou-
tines aren't designed for use with
Command Descriptions
There are 14 individual routines included in Program 3. Five of these serve
as subroutines for the other nine user-callable subroutines. These five
subroutines (SENDCMD, SPOUT, SPIN, CLKLO, and CLKHI) are not
meant to be called directly from BASIC with SYS.
The following descriptions provide all the information needed to use
these routines. The Call address specifies the entry point of the routine; to
activate the routine, SYS to this address. The Table address shows the
location of that command's data storage area. The Format section of each
description details the function of each byte in the command's storage
area. Note that some bits are common to all commands; they are detailed
only in the description of the first command, Read Sector.
READ SECTOR
Purpose; Reads a sector from the currently logged disk and stores the data
in the computer's memory
Call address: $30F8 (12536)
Table address: $3800-$3806 (7 bytes)
Format: $3802: Control byte
bit 7 transfer data (1 = no transfer)
bit 6 error ignore flag (1 = ignore error)
bit 5 buffer transfer (1 = transfer buffer)
bit 4 side select (MFM only — 0 = front, 1 = back)
bits 1-3 burst command (000 for Read Sector)
bit 0 drive select (keep at 0 for all commands)
$3803; Track to be read (0-35 for GCR or 0-39 for MFM)
$3804: Sector to be read (range of valid values depends on format and
mode)
$3805: Number of sectors (must be more than zero)
$3806: Next track (optional, normally unused)
Explanation: This routine reads a sector from the disk into the memory.
Before this routine is called, the correct values should be placed in the
instruction table by POKEing into locations $3802-$3806. You must also
specify the addresses where the data read from disk is to be stored.
Computing the length of this area is not difficult for GCR, since a GCR
block always contains exactly 256 bytes. For MFM, however, the block
length may vary from 128-1024 bytes. Make sure that the difference
between the starting and ending addresses matches the number of bytes
you expect the sector to contain. Store the low byte of the starting address
in location $FB and the high byte in location $FC, Similarly, locations
$FD-$FE must contain the low and high bytes of the ending address. You
can calculate the low and high bytes of an address A with the statements
HI = INT( A/256) and LO = A-H1*256, where HI is the high byte and LO is
the low byte.
Example: None.
B2 COMPUTEI July 1987
BASIC, and cannot be called direct-
ly with a SYS command. And the
1571 user's manual offers little
information on how to use special
features such as burst mode.
This article includes four pro-
grams which make the 1571's pow-
er easily accessible to BASIC
programmers. Program 1 lets you
copy MFM-format disks. Program 2
is a comprehensive "disk doctor"
that permits you to read and alter
any data found on an MFM disk.
Program 3 is a machine language
utility which makes it possible to
access all burst mode routines with
BASIC SYS commands. Program 4
is a machine language display rou-
tine used by Program 2.
Type in and save all four pro-
grams (be sure you have copies of
all four on the the same disk). Pro-
grams 1 and 2 are ordinary BASIC
programs. (To generate the {BELL}
character in Program I, hold down
the CONTROL key and type a G.)
Programs 3 and 4 are written in
machine language and must be
typed in with the Commodore 128
version of "MLX," the machine lan-
guage entry program listed else-
where in this issue. Be sure to read
the MLX instructions carefully
before you begin. Here are the ad-
dresses required to enter Programs
3 and 4 with MLX:
Program 3: BURST
Starting address: 3000
Ending address: 323F
Program 4: SCREEN
Starting address: 3400
Ending address: 349F
You must save Programs 3 and
4 with the filenames BURST and
SCREEN, respectively. It's impor-
tant to use these filenames because
Programs 1 and 2 use them when
attempting to load the programs
from disk. Again, it's also important
that you save Programs 3 and 4 on
the same disk with Programs 1 and
2.
MFM Disk Copier
Program 1 makes copies of MFM-
format disks, including both CP/M
and IBM PC disks. It will not copy
GCR-format Commodore disks,
nor can it be used to duplicate copy-
protected MFM-format disks. (Note
that the master system disk for
Commodore 128 CP/M isn't in true
WRITE SECTOR
Purpose: Write a sector from memory to the currently logged disk
Call address: $3153 (12627) in bank 12-15
Table address: $3807-$380D (7 bytes)
Format: $3809: Control byte
bits 4-7 same as Read Sector
bits 1-3 command (001 for write)
bit 0 same as Read Sector
$380A-$380D: same as Read Sector
Explanation: The format of this command is almost identical to that of
Read Sector. The only difference is that it writes a block to the current disk.
Example: This program writes the contents of locations $4000-$40FF to
track 20, sector 3 in OCR format.
10 B= DEC ("3800") :POKE251,0:POKE253,0:POKE25 2,64:PGKE254,65
20 POKE B+3,20:POKE B+4,3:POKE B+5,2
30 OPEN15,a,15:BANK ISiSYS DEC ( "3153 ") :END
INQUIRE DISK
Purpose: Log the disk in the drive
Call address: $30E8 (12520) in bank 12-15
Table address: $380E-$3810 (3 bytes)
Format: $3810: Control byte
bits 5-7 not used (can be any value)
bit 4 same as Read Sector
bits 1-3 command (010 for Inquire Disk)
bit 0 same as Read Sector
Explanation: This command logs a disk for use. Disks must be logged in
before they are used. Information pertaining to the disk is returned in the
status byte. The status byte indicates the disk's format (MFM or GCR), the
number of bytes in each sector, and the drive's error status. If you wish to
determine the format of the disk, use the command Query Disk Format,
which returns more information.
Example: This line logs the disk and prints the status and format on the
screen.
10 0PEN15,8,15:B71NK 15:SYS DEC ( "SSEB" ): PRINT PEEK( 250 ) :ERD
FORMAT MFM
Purpose: Format an MFM disk
Call address: $30EE (12526)
Table address: $3811-$381B (11 bytes)
Control byte
partial format (l = partial)
index mark written (1= written)
double side select (l=format double side)
side select (valid if bit 5=0)
command (Oil for MFM)
same as Read Sector
Control byte
7 must be a
Format: $3813:
bit 7
bit 6
bit 5
bit 4
bits 1-3
bit 0
$3814
bit
1
1024)
bit 6 must be a 0
bits 0-5 specify the logical starting sector
$3815: Interleave byte (normally 0)
$3816: Sector size (0 = 128 bytes, 1 = 256, 2 = 512, 3
$3817: Last track (0 to 39, used for partial format)
$3818: Number of sectors per track (standard is 26 for 128-byte
sectors, 16 for 256-byte sectors, 9 for 512-byte sectors, and 5
for 1024-byte sectors.)
$3819: Logical starting track (normally 0)
$3 81 A: Starting track offset (normally 0)
$381B: Fill byte (value which to fill all sectors; normal value is $E5)
Explanation: This command formats an MFM disk, which allows great
flexibility. You may control the size of the sectors, the number of sectors
July 1987 COMPUTE! 83
MFM format, and cannot be copied
with this program.) When you run
the program, it checks to see
whether the burst utility routine
(Program 3) is in memory, and
loads it from disk if it is not. Follow
the prompts on the screen and
swap disks when indicated. The
program automatically detects the
format of the source disk and cre-
ates the same format on the desti-
nation disk. An 80-column monitor
is required because the program
uses the 128's FAST mode.
MFM Disk Utility
Program 2, "MFM Disk Utility,"
offers a number of useful features
for manipulating the information
on MFM disks. Note that it requires
an 80-column display, since a 40-
column screen doesn't have
enough room to display the con-
tents of an entire 1024-byte MFM
disk sector. When you run the pro-
gram, it loads both the BURST and
SCREEN routines (Programs 3 and
4) from disk, if they aren't already
in memory. Line 4 of the program is
optional: Its only purpose is to
make sure that the drive's read/
write head is within the range of a
GCR disk (tracks 1-35) before the
main program begins.
The program has the standard
features found in most disk utilities.
With this program, you can exam-
ine the contents of any sector on an
MFM-format disk, and change the
data as desired. The program is self-
prompting, so you won't need ex-
tensive instructions to use it.
Simply respond to the prompts dis-
played on the screen. Here is a list
of the program's functions:
Log in new disk
New block
Rewrite block
Move to next block
Move to previous block
Move to next track
Move to previous track
Change byte under cursor
Text mode
Double side select
You should always perform a
log in operation when you insert a
new disk in the drive. After logging
in a new disk, you should use the
New block option to select the first
block before using the + or — keys
to change blocks. The program dis-
per track, and the number of tracks per disk. You need not precede this
command with an Inquire Disk or Query Disk Format command.
Example: The following will format an MFM disk with ten 512-byte
sectors per track on both sides.
10 OPEN 15,8,15:B=DEC( "3800");POKE B+1 9, 102 : POKE B+22,2
20 POKE B+20,128;POKE B+24,10:BANK 1 5 : SYS DEC ( " 30EE" ) : END
FORMAT GCR
Purpose: Format a GCR disk
Call address: $30E4 (12.516) in bank 12-15
Table address: $381C-$3821 (6 bytes)
Format: $381E: Control byte (must be $06)
$381F: Control byte (must be $00)
$3820-$3821: ID characters (can be any value)
Explanation: Formats a disk in Commodore GCR (Group Code Record-
ing) format. This command operates the same as a normal format but does
not write a directory to the disk.
Example: Format a GCR disk with an ID of GC
10 OPEN 15,8,15:B=DEC("3800") :P0KE B+32,71:P0KE B+33,67
20 POKE B+30,6:POKE B+31,0:BANK 15:SYS DEC ( " 30E4" ) :END
SECTOR INTERLEAVE
Purpose: Read or change the sector interleave factor used for multisector
burst read and write
Call address: $30C4 (12484) in bank 12-15
Table address: $3822-$3825 (4 bytes)
Format: $3824: Control byte
bit 7 interleave read or write (0 = write interleave, l=read
interleave)
bits 1-4 select command (0100 for sector interleave)
bit 0 same as Read Sector
$3825 Interleave (interleave to be written to the drive; $00 is normal)
Explanation: Reads or sets the interleave byte stored in the drive used for
multisector reads or writes. The interleave byte is usually set to zero.
Example: Read and display the sector interieave.
10 OPEN 15,8,15:BANK 1 5 :B=DEC ( "3800 " ) : POKE B+36,136
20 SYS DEC("30C4") :SI-=PEEK(250) iPRINT SIsEI^D
QUERY DISK FORMAT
Purpose; Determine the disk format on the specified track
Call address: $3099 (12441) in bank 12-15
Table address: $3826-$3829 (4 bytes)
Format: $3828 Control byte:
bit 7 step head flag (0 = track 0)
bit 4 same as Read Sector
bits 1-3 select command (101 for Query Disk Format)
bit 0 same as Read Sector
$3829 Track offset (if bit 7 of $3828 is set to 1)
Explanation: Determines the format of any track on the disk. This
command also logs in the disk so that it can be used. The status byte in $FA
(250) is updated to indicate any errors, the sector size of the disk (128, 256,
512, or 1024), and the disk's format (MFM or GCR). For an MFM disk, the
routine returns additional information about the format in locarions
$3700-$3704 (14080-14084). Location $3700 holds the number of sectors
on the track; $3701 holds the logical track number on the track; and $3702
holds the minimum logical sector number (the sector with the lowest value
address). Location $3703 holds the maximum logical sector number (the
sector with the highest value address); $3704 holds the CP/M hard
interleave found on the track. This data can be useful in finding the format
of nonstandard MFM disks.
Example: Determine the format of track 10.
84 COMPUTEI Julv 1987
plays information about the format
of the currently logged disk. The
double side select operation lets you
access the alternate side of a dou-
ble-sided disk. You can't access the
back side of an MFM disk by simply
flipping it over, since that maneu-
ver prevents the drive from finding
the disk's index hole.
Burst Mode Utility
In addition to its use with Programs
1 and 2, Program 3 provides full
access to the 1571's extra features —
including burst mode commands —
for anyone wishing to write disk-
oriented programs. Although the
program itself is written in machine
language, you need not be a ma-
chine language expert to use it. All
of the disk-handling routines can
be accessed from BASIC with a SYS
command. Of course, the routines
can also be accessed from machine
language if you wish.
Program 3 occupies memory
locations 12288-12860 ($3000-
$323C). Each burst utility com-
mand is activated by SYSing to a
different location. For instance, the
SYS address for the Query Disk For-
mat routine is $3099 (12441). To
execute this routine, you can per-
form either SYS 12441 or SYS
DEC("3099").
Program 3 also uses a small
command table which begins at lo-
cation $3800 (14336). This table
contains the actual commands
which are sent to the drive to per-
form disk operations. To create the
command table from BASIC, in-
clude the following lines in your
program (this routine may be re-
numbered as needed):
1000 RESTORE: FOR I
TO DEC ("3800")+
1010 READ A?: POKE I
XT I: RETURN
1020 DATA 55,30,00,
,55,30,02,00,01,
1030 DATA 04,55,30,
,27,0A,00,00,E5,
1040 DATA 58,58,55,
,30,0A,00,55,30,
DEC( "3800")
16*3-1
,DEC(A5) :NE
00,01,02,01
02,01,55,30
06,81,00,02
55,30,06,00
30,08,00,35
8C, 00,00, 00
You can also generate the com-
mand table by calling the GEN TA-
BLE routine contained in Program 3
(see below).
Many of the special disk com-
mands require that you pass some
information to the drive along with
the command itself. For example,
when you wish to read the contents
10 OPEN 15,8,15:BANK 15 s B=DEC (" 3800 "): POKE B+41 , 10
20 POKE B+40,138:SYS DEC( "3099" ) :END
INQUIRE STATUS
Purpose: Read or write the status byte in the drive
Call address: $3075 (12405) in bank 12-15
Table address: $382A-$382D (4 bytes)
Format: $382C (14380) Control byte
bits 6-7 00 = write new status
01 = log in disk
10= read status
ll = has disk been changed? ($FA contains $0B if
changed)
bits 1-4 burst command (110 for Inquire Status)
bit 0 same as Read Sector
$382D (14381) New stahis (status sent to the drive if $382C bit 7 is 0)
Explanation: Reads or writes the status in the drive. The command can
also be used to detect whether the disk has been swapped, and if it has, to
log it in.
Example: Read and display the status from the drive.
10 OPEN 15,8,15:BANK 15 :B=DEC ( "3800 "): POKE B+44,140
20 SYS DEC ( "3075" ) :PRINT PEEK ( 250 ): END
SENDCMD
Purpose: Send a command to the disk drive
Call address: $304A (12362) in bank 12-15
Table address: none
Format: none
Explanation: Sends a command to the disk drive. The Y and X registers
must contain the high and low byte, respectively, of the address for the
character string which comprises the command. The A register must
contain the length of the command. This subroutine is called by all the
burst utility commands. For the subroutine to function properly, the disk
command channel must be open to logical file 15 (OPEN 15,8,15).
Example: Send a Query Disk Format command.
10 OPEN 15,8,15:BANK 15:SYS DEC ( "304A" ) , 4, 33 , 56 :END
SPIN
Purpose: Prepares the serial bus for fast serial input
Call address: $3025 (12325) in banks where the I/O block is visible (for
example, bank 15)
Table address: none
Format: none
Explanation: For standard (slow) data transfers, the 128's serial bus is
bidirectional — data is free to flow either in or out. However, the bus has
extra circuitry to enforce the direction of data flow for fast (burst mode)
transfers. This subroutine, intended for use by other burst utility routines,
sets up the serial bus for fast input.
Example: Prepares bus for fast input.
10 SYS DEC( "3025") :END
SPOUT
Purpose: Prepares the serial bus for fast serial output
Call address: $3000 (12288) in banks where the I/O block is visible (for
example, bank 15)
Table address: none
Format: none
Explanation; See the explanation above for the SPIN routine. This routine
sets up the serial bus for fast output.
Example: Prepares bus for fast output.
10 SYS DEC ( "3000") :END
July 1987 COMPUTEI 85
of a sector, you must tell the drive
which sector to read. The command
table contains a storage area for
each command. Before you activate
a command with SYS, you must
POKE the data needed by that com-
mand into the corresponding stor-
age area for that command. The
descriptions at the end of this article
contain all the details you need to
call the 14 routines provided by
Program 3.
To see how this works, let's
call the Read Sector routine. The
description for this routine indi-
cates that its storage area is at loca-
tions $3802-$3086. In addition to
placing information in that area,
you must indicate the starting and
ending addresses of the memory
area where you wish to store the
data from the disk sector. The ad-
dresses are stored in locations
$FB-$FC and $FD-FE, respective-
ly, using standard low-byte/high-
byte format. The following program
segment calls Read Sector to read the
contents of track 10, sector 1 into
memory at $4000 (it assumes you
are reading a GCR disk).
10 B=DEC (" 3800 '■) !P0KE25 1,0: POK
E253,0:POKE252,64:POKE254,6
5
20 POKE B+3,10!POKE B+4 , 1 : POKE
B+5,2
30 0PEN15,8,15:BANK 15:SYS DEC
(''30F8") :END
Program 1: MFM Disk Copier
For instrudlons on entering this program,
please refer to "COMPUTE! 's Guide to Typing
in Progroms" elsewhere in this Issue.
QF 1 REM COPYRIGHT 1987 COMPUT
El PUBLICATIONS, INC.
(2 SPACES] ALL RIGHTS RESE
RVED.
PP 2 PRINT" {CLRlCOPYRIGHT 1987
"; PRINT "COMPUTE 1 PUBLICAT
IONS, INC.":PRINT"ALL RIG
HTS RESERVED . " : FORX=1TO10
00: NEXT
CJ 10 OPEN15,a,15
FB 20 FAST
HQ 30 BANK15
KK 40 PRINT"{CLR] (4 TAB 1 MFM DI
SK COPIER"
FB 45 IFPEEK(DEC( "3800") )=8STH
ENGOTO60
DX 50 BLOAD" BURST"
XF 60 SYSDEC("3200")
PX 70 S$=" (BELL) (CLRl INSERT SO
URGE DISK"
XB 80 D?=" (BELL] INSERT DESTINA
TIGN DISK"
KG 90 E$=" {bell] fCLR) ERRORS: "
QF 100 PRINT : PRINT" [bell) INSER
T SOURCE DISK"
MR 110 GETA?:IFA$<>CHR$(13)THE
NGOTO110
FK 115 POKEDEC( "3828") ,26:SYSD
CLKLO
Purpose: Set the serial bus clock line to a low state
Call Address: $3038 (12344) in banks where the I/O block is visible (for
example, bank 15)
Table address: none
Format: none
Explanation: Sets the serial bus clock line output to a low state (0 volts).
This subroutine is intended for use by other burst utility routines.
Example: Bus clock line output set to a low state.
10 SYS DEC("3038") :END
CLKHI
Purpose: Set the serial bus clock line to a high state
Call address: $3041 (12353) in banks where the I/O block is visible (for
example, bank 15
Table address: none
Format: none
Explanation: Sets the serial bus clock line output to a high state ( + 5
volts). This subroutine is intended for use by other burst utility routines.
Example: Bus clock line output set to a high state.
10 SYS DEC ( "3041") :END
GEN TABLE
Purpose: Generates the command table at $3800 required for the other
BURST subroutines
Call address: $3200 (12800) in banks with block 0 RAM
Table address: none
Format: none
Explanation: Creates the command table at $3800. The table can also be
generated using the BASIC program shown above.
Example: Generates the command table at $3800.
10 SYS DEC( "3200") SEND
EC("3099") :A=PEEK(250) :
HM
320
A=AAND1 5 : 1 FA < 2 THENBS=1 :
QE
330
ELSEBS=0
PX
116
POKE DEC( "3828" ) , 10
SM
120
SYSDEC("3099") iSB=PEEK(
KS
335
250>:SI=0
CX
340
RC
130
TD=SBAND128
QG
350
KM
140
IFSB=0THENPRINT : PRINT " I
KB
360
DONT COPY GCR DISKS" 5 C
AD
370
L0SE15:RUK
MK
150
PRINT "MFM FORMAT"
MJ
160
BL=SBAND48
RA
170
IFBL=0THEKP1=0 ! BY=128
AE
380
BR
180
IFBL=16THENP1=1 :BY=256
MF
190
IFBL=32THENPI=2:BY=512
GB
390
PH
200
IFBL=48THENP1=3 :BY=1024
QE
205
P2=PEEK{DEC("3700"))
HX
210
B=DEC("3800")
QX
400
BX
220
POKEB+22 , PI : POKEB+24 , P2
MH
410
CK
230
PRINTBY"BYTE SECTORS "P2
"SECTORS PER TRACK"
DC
420
AF
270
PRINT :PRINTD5
AP
425
QK
280
GETA$ : IFA? OCHR5 ( 13 ) THE
NGOTO280
DQ
430
EF
290
PRINT:PRINT"{3 BELL } FOR
MATTING. . ."
PQ
440
EC
294
SL=«DEC( "3900") :SA=>252:E
GE
450
A=254 : POKE251 , 0 : POKE253
MS
460
,0:IFBS=1THENPOKEDEC( "3
813") ,38:POKEDEC( "3813"
),PEEK(DEC("3813") )0R64
RE
300
SYSDEC("30EE") :CLOSE15 :
OPEN15,8,15
FJ
470
DP
310
FORD=00TO39STEPINT (144/
P2/BY*256)
RH
480
PRINT: PRINTS?
GETA5 : IFA5 OCHRS ( 13 ) THE
NGOTO330:ELSESYSDEC( "30
99")
TL=INT ( 144/P2/BY*256 )-l
SL=DECC "3900") :DL=SL
FORT=0TOTL
FORS=lTOP2
GOSUB3000 : POKESA , HI : POK
ESA-1 , LO : SL=SL+BY : GOSUB
3000 : POKEEA, HI : POKEEA-1
,L0
POKEB+3 , T+Ds POKEB+4 , S : P
OKEB+5 , 2 : POKEB+6 , T+D+1
PRINTSI"{LEFT)R:"T+D"
{left) {2 spaces] "s"
{lept1{2 spaces] {up]"
SYSDEC("30F8")
IFT+D> 38AHDS + 1 > P2THENG0
TO420 : ELSENEXT : NEXT
PRINT: PRINTD$
TL=INT ( 144/P2/BY*256 ) -1
GETA$ : I FA$ < > CHR? (13) THE
NGOTO430 :ELSESYSDEC ( " 30
99")
FORT=0TOTL
F0RS=1T0P2
GOSUB3010 : POKESA, HI : POK
ESA-1 , LO : DL=DL+BY: GOSUB
3010 : POKEEA, HI : POKEEA-1
,L0
POKEB+10,T+D: POKEB+11 , S
: POKEB+12 , 0 : POKEB+13 , T+
D+1
PRINTSI " ELEFT}W: "T+D"
86 COMPUTil July 1987
[left) {2 SPACES )'"S"
BG
220
IFB5<>"L"THEN380
GR
660
GOTO430
[LEFT 3 (2 SPACES} (UP}"
ED
230
SYSDEC("3099") :SYS13433
JB
670
IFB? < > " + "THENGOTO740
CS 490 BANK15:SYSDEC("3153"):B
DS
240
SU=PEEK(250)
HA
680
T=T + 1
ANK15
PR
250
A$="" :FORF=0TO70:A5=A9+
FC
690
IFPU=0THENGOTO720
FH 500 IFT+D>38ANDS+l>P2THENGO
"{ RIGHT }":NEXT
DE
700
IFT>39THENT=0
TO505:ELSENEXT:NEXT:NEX
MC
260
PRINT" (HOME) (14 DOWN}"
CB
710
GOTO430
T
RS
270
PRINTA?; :PU=SUAND128
XE
720
IFT>35THENT=1
XR 505 IFBS=1ANDSI=0THENGOTO52
XR
280
IFPU=128THENPS-" HFM":E
MA
730
GOTO430
0
LSEPS=" GCR":SU=16
SQ
740
IFB$<>"-"THENGOTO810
DR 510 PRINT"[CLR}(3 BELLJcOPY
xs
290
PRINTP?
AF
750
T=T-1
COMPLETE . . . " : SLEEP4 : RU
MQ
300
PRINTA?;
XR
760
IFPU=0THENGOTO790
N
BK
310
AU=SUAND4B : POKE14302 , 0
KH
770
IFT<0THENT=39
ES 520 POKEDECf" 3802"), 16: POKE
FB
320
IFAU=0THENBY='12a : P0KE14
GE
780
GOTO430
DEC ( "3809 " ) , 18 : POKEDEC (
302,80:POKE14303,44
KB
790
IFT<1THENT=35
"3828"), 26
MJ
330
IFAU=16THENBY=256 : POKEl
PE
800
GOT043a
HC 530 SL=DEC("3900"):SA=252:E
4303,45
AE
810
IFB? <> "R"THENGOTO930
A=2 54:POKE251,0:POKE2 53
AM
340
IFAU=48THEBBY=1024 : POKE
PC
820
PRINT" [HOME) (19 D0WN}"L
,0:SI=1
14303,48
EFT? (A?, 40 ); "ARE YOU SU
RE 540 GOTO310
JE
350
IFAU=32THEKBY=512:P0KE1
RE7 " ;
SJ 3000 HI=INT(SL/256):LO=SL-H
4303,46
SE
830
GETB? s IFB?= " "THENGOT083
I*256:RETURN
GH
351
BL=PEEK(DEC("3700") )
0
JJ 3010 HI = INT(DL/256) :LO=!DL-H
RB
352
IFPU<>128THENBL=20:T=1:
AA
835
PRINT" (17 LEFT]
I*256:RETURN
S=-l
(20 SPACES}"
KF
355
PRINT" (5 SPACES] ":PRINT
DX
840
IFB?<>"Y"THENGOTO210
Program 2: MFM Disk Utility
PR
356
A$r"(5 SPACES}"
PRINT" [2 UP3";A?;
PA
850
POKE251 , 0 : POKE253 , 0 : POK
ESA,44
For instrucJions on entering this progrann.
PO
360
PRINTBYi PRINTA5 ; BL
PP
860
IFAU=0THENPOKEEN , 44 : POK
pleas© refer to "COMPUTEI's Guide to Typing
MK
370
GOTO210
EEN-1,80
In Programs" elsewhere In this issue.
ES
380
IFB5<>"N"THENGOTO500
CP
870
IFAU=16THENPOKEEN,45
QF 1 REM COPYRIGHT 1987 COMPUT
JG
390
PRINT" [HOME] [19 DOVfN}";
SE
880
IFAU=32THENPOKEEN , 46
E! PUBLICATIONS, INC.
AD
400
AS="" : FORF=1TO40 :A?=A?+
XQ
890
IFAU=48THENP0KEEN , 48
(3 SPACES 3 ALL RIGHTS RESE
" (RIGHT] ":NEXT
DK
900
POKEB+10 , T : POKEB+11 , S
RVED.
PA
410
PRINTA? "TRACK" ; : INPUTT :
EK
910
SYSDEC("3153")
PF 2 PRINT" {CLRJ COPYRIGHT 1987
PRINTA? "BLOCK" r : INPUTS
GH
920
GOTO210
": PRINT "COMPUTE! PUBLICAT
CK
420
PRINT" [2 UP) "A?"
PP
930
IFB? <> " [ down) "THENG0T09
IONS, INC. ":PRINT"ALL RIG
(17 SPACES] ":PRINTAS"
60
HTS RESERVED." I FORX=1TO10
(20 SPACES]"
MM
940
R=INT (C/80 ) !IFC+80>BY-1
00: NEXT
MD
430
POKEB+3 , T : POKEB+4 , S : SYS
THENGOTO210
DO 3 BANK 15
13433 :POKESA, 42
QE
950
PHI NT "[DOWN]"; :C=C+80!G
QE 4 DCLEAR: A5=DS$
AP
431
PRINT" [HOME] (22 DOVfN}";
OTO210
AH 5 PR1NTCHR5(14)
LEFT? (A5, 40) r "TRACK
XM
960
IFB? <> " ( UP j "THENGOTO990
AK 6 RZ?=CHR$(19) :FOR J=l TO 1
(5 SPACES] [5 LEFT}";T
EP
970
R=INT(C/80) tIFR=0THENGO
4:RZ$=RZ$+CHR? (17 ) sNEXT
XD
432
PRINTLEFT? ( A? , 40 ) : " BLOC
TO210
SA 10 FAST
K(5 SPACES] (5 LEFt}";S
HD
980
PRINT"[UP}"; :C=C-80:GOT
XJ 20 OPEN15,8,15
EA
433
PRINTLEFT? ( A? , 40 ) ; "SIDE
0210
HF 30 PRINT" fCLRHlS D0HN][L]0
[6 SPACES} (5 LEFT}"rCS;
AA
990
IFB? <> " (RIGHT } "THENGOTO
G IN NEW DISK"
CC
435
POKEEN-1 , 0 : POKESA-1 , 0 : P
1020
XD 40 PRINT"CN]EW BLOCK"
OKESA,44
BE
1000 IFC=BY-1THENGOTO210
HR 50 PRINT "[R]EWRITE BLOCK"
PE
440
IFEY=128THENPOKEEN , 44 : P
FP
1010 PRINT" [RIGHT] "; :C=C+1 :
BB 60 PRINT "[+]NEXT BLOCK"
OKEEN-1,80
GOTO210
DP 70 PRINT "[-] PREVIOUS BLOCK"
MA
450
IFBY=256THENPOKEEN,45
XA
1020 IFB? <>" (LEFT }"THENGOTO |
GK 80 PRINT "[+]NEXT TRACK"
XH
460
IFBY=51 2THENP0KEEN , 46
1050
KX 90 PRINT"[-3pREVI0US TRACK"
CG
470
IFBY=1024THENPOKEEN,48
AR
1030 IFC=0THENGOTO210
EG 100 PRINT 'TclHANGE BYTE UNO
XB
480
SYSDEC( "30F8")
GR
1040 PRINT"fLEFT}"; :C=C-1:G
ER CURSOR"
DD
485
C=0: PRINT "[home]" J
OTO210
KH lia PRINT "[T] EXT MODE"
SB
490
GOTO210
GG
1050 IFB? <>" (HOME) "THENGOTO |
RA 115 PRINT"[D]OUBLE SIDE SEL
RH
500
IFB5 < > " + "THENGOTO580
1070
ect{home3"
CH
510
IFSI=1THENS=S+1 sGOTOSlS
EK
1060 PRINT"(HOME}"; !C=0:GOT |
PS 120 PRINT" [HOME] (15 DOWN}
BE
511
CS=CS+1 :CS=CSAND1 : AV=16
0210
[40 RIGHTJDISK INFO:
*CS : POKEB+2 , AV s POKEB+9 ,
DQ
1070 IFB?<>"C"THENGOTO1160
[2 SPACES JMFM/GCR:"
AV+2
QH
1080 PRINT" [HOME] (19 DOVffl]"
PB 130 PRINT" (52 RIGHT] BYTES P
EG
512
IFCS=0THENS=S+1
LEFT? (A?, 40) "NEW VALUE
ER BLOCK:"
MP
515
IFPU=0THENGOTO5 50
"; :INPUTNV
JF 140 PRINT "(52 RIGHT} BLOCKS
RB
520
IFS>BLTHENT=T+1:S=1
PS
1090 PRINTLEFT?(A$,40)"(UP) |
(SPACE} PER TRACK:"
MK
530
IFT>39THENT=0
(10 SPACES)"
DR 145 IFPEEK(DEC("3a00") )=85T
DF
540
GOTO430
BE
1100 POKE11264+C,NV!R=INT(C |
HENGOTO170
BP
550
IFS>20THENT=T+1 :S=0
/80) :O=C-R*80:M=INT(O/
JD 150 BLOAD" BURST"
MS
560
IFT>35THENT=1
8) :L=0-M*8
HB 160 BLOAD" SCREEN"
XJ
570
GOTO430
RQ
1110 PRINT "{ HOME ]";: I FR=0TH |
SC 170 POKE14302,00iPOKE14303,
GX
580
IFB? <> "-"THENGOTO670
ENGOTO1130
45
BH
590
IFSI=1THENS=S-1 :GOTO600
SP
1120 F0RF=1T0R: PRINT" (DOWN) |
JM 180 SYSi3433:SYS13418
DX
591
CS=CS-1 sCS=CSANDl :AV=16
";5NEXT
HB 190 B=DEC( "3800"):SA=252:EN
*CS : POKEB+2 , AV : POKEB+9 ,
KS
1130 IFM=0THENGOTO1150
=254;CP=0:SI=1:CS=0
AV+2
MX
1140 F0RF=1T0M:PRINTCHR?(9)
DJ 195 SYSDEC( "3200")
PX
592
IFCS=1THENS=S-1
; :NEXT
EQ 200 PQKE251,0:POKE253,0:POK
SX
600-
IFPU=0THENGOTO640
EX
1150 IFL=0THENGOTO1000:ELSE |
E252,44:POKE254,46:POKE
CF
610
IFS<1THENT=T-I :S=BL
F0RF=1T0L: PRINT"
B+2 , 0 : POKEB+9 , 2
PK
620
IFT<0THENT=39
[RIGHT]"; :NEXT:GOTO100
MA 210 GOSUB 1420
MP
630
GOTO430
0
AF 211 GETB?:IFB5=""THENGOT021
MD
640
IFS<0THENT=T-1 :S=20
XK
iiee
I FB 5 <> " T " THENGOTO 1350
1
XJ
650
IFT<1THENT=35
BX
1172
PRINT" (home} [19 DOVmj"
July 19B7 COMPUTE] 87
LEFTS (AS, 40) "RETURN TO
30C8:AD
24
38
29
80
D0
05
A9 90
EXIT";
30D0:04
4C
06
30
A9
03
20
4A 08
AP X180
R=INT(C/80) :O=C-R*80:M
30DB:30
AD
24
38
29
80
F0
03 F4
=INT(0/8) :L=0-M*8
30E0:20
75
30
60
A2
IC
A0
38 B9
GB 1190
PRINT" [HOME}"; iIFR=0TH
30E8:A9
06
20
4A
30
60
A2
11 Al
ENGOTO1210
30F0:A0
38
A9
0A
20
4A
30
60 70
BH 1200
F0RF=1T0R: PRINT" {DOWN]
30F8:A2
00
A0
38
A9
07
20
4A 36
" ; : NEXT
3100:30
78
2C
0D
DC
AD
00
DD 6A
BD 1210
IFM=0THENGOTO1230
3108:49
10
8D
00
DD
A9
08
2C 96
GC 1220
F0RF=1T0M : PRINTCHR? ( 9 )
3110:0D
DC
F0
FB
AD
00
DD
49 80
! sNEXT
3118:10
80
00
DD
AD
0C
DC
85 A0
JQ 1230
IFL=0THEKGOTO1240:ELSE
3120:FA
29
0F
C9
02
fl0
2A
A0 90
F0RF=1T0L: PRINT"
3128:00
A9
08
2C
0D
DC
F0
FB 72
{right}"; ;NEXT
3130:AD
00
DD
49
10
SD
00
DD 4E
MX 1240
GETB? : 1FB$=""THENG0T01
3138:AD
0C
DC
91
FB
E6
FB
00 6D
240
3140:02
E6
FC
A5
FD
C5
FB
D0 27
XP 1250
A=ASC ( B? ) : IFA=13THENG0
TO1270:ELSEPOKE11264+C
3148:E0
3150:60
A5
58
FE
60
C5
A2
FC
07
00
A0
DA
38
58 F9
A9 04
3158:06
20
4A
30
4C
Al
31
8D EA
, A : I FC=BY-1THENPRINT "
3160:EF
37
A0
00
20
00
30
AD AB
{ HOME 1 " ? J C=0 : GOTOl 240
3168:00
DD
CD
00
DD
00
F8
40 6D
XB 1260
C=C+1 : PRINT " { RIGHT } " ; :
3170:EF
37
29
40
F0
Fl
AD
EF 5C
GOTO1240
3178:37
49
40
8D
EF
37
Bl
FB 65
RX 1270
PRINT" {HOME) (19 DOWN}"
3180:80
0C
DC
A9
08
2C
0D
DC CA
LEFT? (A$, 40)"
3188:F0
PB
E6
FB
D0
02
E6
FC 58
{16 SPACES}";
3190:A5
FE
C5
FC
D0
01
A5
FD 25
SF 1280
R=INT(C/80) :O=C-R*80:M
3198:C5
FB
D0
CB
4C
AC
31
58 83
=INT(0/8) :L=0-M*8
31A0:60
78
A9
3E
8D
00
FF
A9 80
JK 1290
PRINT" {HOME}"; :IFR=0TH
31A8:40
4C
5F
31
A9
00
8D
00 A5
ENGOTO1310
31B0:FF
20
C6
31
EE
20
00
AD 4E
PS 1300
F0RF=1T0R: PRINT" {DOWN}
31B8:0A
38
80
EF
37
AD
0B
38 90
"; :NEXT
31C0:8D
EE
37
4C
9F
31
20
25 78
JP 1310
IFM=0THENGOTO1330
3108:30
2C
0D
DC
20
38
30
A9 A9
RJ 1320
FORF=1TOM: PRINTCHR$ ( 9 )
31D0:08
2C
0D
DC
F0
FB
AD
0C 90
; sNEXT
3 IDS: DC
85
FA
20
41
30
60
20 18
AE 1330
IFL=0THENGOTO1340:ELSE
31E0:25
30
2C
0D
DC
20
38
30 40
F0RF=1T0L: PRINT"
31E8:A9
08
2C
0D
DC
FH
FB
AD C8
{RIGHT) "r (NEXT
31F0:0C
DC
60
EA
AD
00
DD
49 BD
JX 1340
GOTO 2 10
31F8:10
8D
00
DD
AD
0C
DC
60 5C
FQ 1350
IFB5<>"D"THENGOTO210
3200 :A2
2F
BD
0C
32
90
00
38 3A
KS 1360
IFSITHENGOTO1380
3208:CA
10
F7
60
55
30
00
00 46
AH 1370
SI=1:P$="D0UBLE SIDE 0
3210:01
02
01
55
30
02
00
01 75
FF" : GOTOl 390
3218:02
01
55
30
34
55
30
06 47
RK 1380
SI=0:P?="DOUBLE SIDE 0
3220:81
00
01
27
10
00
00
E5 3E
N"
3228:55
30
06
00
58
58
55
30 03
ES 1390
PRINT" (home) {20 DOWN]"
3230:08
00
55
30
0A
00
55
30 71
LEFTS (AS, 40) PS;
3238:8C
00
00
00
00
00
00
00 E2
SK 1400
SLEEPl
QJ 1410
PRINT" {20 LEFT}
Program 4: SCREEN
{22 SPACES)"; :GOTO210
Please refer to the '
MiX
• article elsewhere in
DG 1420
PRINT az$; : RETURN
this issue before entering the following
program.
Program 3: BURST
Please refer to the "MIX" article elsewhere in
3400:A2
12
20
DA
CD
80
D0
37 6D
this issue be
program.
fore entering the following
3408 :A2
3410:A2
13
0A
20
20
DA
DA
CO
CD
8D
8D
Dl
D2
37 67
37 7F
3418:A9
00
A2
12
20
CC
CD
ES 83
3000 :AD
05 D5 09 08 8D 05 D5 lA
3420:20
CC
CD
A2
7F
A9
00
20 72
3008:A9
7F BD 00 DC A9 00 80 BA
3428 :CC
CD
A9
2C
80
36
34
A9 B9
3010:05
DC A9 03 8D 04 DC AD 73
3430:00
SD
35
34
AD
00
2E
20 CF
301B:0E
DC 29 80 09 55 8D 0E AA
3438 :CA
CD
EE
35
34
00
03
EE 84
3020: DC
20 0D DC 60 AD 0E DC IC
3440:36
34
AD
35
34
CD
DE
37 A7
3028:29
80 09 03 8D 0E DC AD EA
3448 :D0
EA
AD
36
34
CD
DF
3 7 BC
3030:05
D5 29 F7 8D 05 D5 60 B9
3450:D0
E2
AD
D0
37
A2
12
20 25
3038:AD
00 DD 09 10 8D 00 DD 50
3458:CC
CD
E8
AD
Dl
37
20
CC 0B
3040:60
AD 00 DD 29 EF 8D 00 3E
3460:CD
A9
60
EA
A2
0A
20
CC IF
3048 :DD
60 8C 66 30 8E 65 30 5E
3468:CD
4C
65
FA
78
A9
34
80 87
3050:A8
A9 00 85 FA AD IC 0A 98
3470:15
03
A9
8D
8D
14
03
58 40
3058:29
BF 8D IC 0A A2 0F 20 C9
3478:60
A2
00
A9
20
90
00
2F FA
3060 :C9
FF A2 00 BD 26 38 20 11
3480 :9D
00
2C
90
00
20
90
00 07
3068:A8
FF E8 88 D0 F6 20 CC 32
3488:2E
E8
D0
Fl
60
CE
CF
37 90
3070:FF
2C IC 0A 60 A2 2A A0 82
3490:F0
03
4C
65
FA
A9
05
SD 28
3078:38
A9 04 20 4A 30 20 25 5A
3498 :CF
37
4C
00
34
00
00
00 El
3080:30
2C 0D DC 20 38 30 A9 5F
©
3088:08
2C 0D DC F0 FB AD 0C 46
3090: DC
85 FA AA 20 41 30 8A BB
3098:60
A2 26 A0 38 A9 04 20 31
30A0:4A
30 20 DF 31 85 FA 29 F2
30A8:80
10 18 A5 FA 29 15 C9 IB
3000:02
90 00 A9 00 85 FB A9 83
30B8:05
85 FD A9 37 85 FC 85 A6
30C0:FE
D0 3E 60 A2 22 A0 38 B9
Save Your
Copies of
COMPUTE!
Protect your bock issues
of COMPUTE! in duroble
binders or library coses.
Eocli binder or cose is
custom-made in flag-blue
binding with embossed
white lettering. Each holds
a year of COMPUTE!. Or-
der several and l<eep
your issues of COMPUTE!
neatly organized for quick
reference. (These binders
make great gifts, tool)
Binders Cases:
$8.50 each; $6.95 each;
3 for $24.75; 3 for $20.00;
6 for $48.00 6 for $36.00
(Please add $2.50 per unit
for orders outside the U.S.)
Send in your prepaid order
with the attached coupon
fvlail to: Jesse Jones Industries
P.O. Box 5120
Dept. Code COTE
Philadelphia, PA 19141
Please send me COM-
PUTE! D coses n binders.
Enclosed is my check or money
order for S . (U.S. funds
only.)
Name .
Address
City
State
.Zip ,
Sottsfoction guaranteed or money
refunded.
Please allow 4-6 weeks for delivery.
88 COMPOTEI July 1 987
Medium-Resolution
Autorun
For Atari ST
This compact program allows you to
run Atari ST programs from the
AUTO folder in medium resolution.
The AUTO folder on the Atari ST is
a handy device. When you turn on
the ST, the computer looks on the
disk in drive A: for a folder (sub-
directory) named AUTO, If AUTO
exists, the ST automatically runs
every program it finds in that fold-
er. One of the most common uses of
the AUTO folder is to run programs
that allow you to set the time and
date or that set up a RAMdisk in the
computer's memory.
The AUTO folder has some
significant limitations, however.
First, because the ST runs programs
from AUTO before it installs the
GEM graphics interface, you cannot
autorun any GEM program. (A
GEM program is one such as First
Word, which uses the ST's mouse,
windows, menus, and icons. All
GEM programs end with the file-
name extension .PRG, but it also is
possible for a non-GEM program to
have that extension. Files that end
with .TOS or ,TTP are never GEM
programs.)
Secondly, if you have a color
monitor, the ST always autoruns
programs in the low-resolution
(320 X 200) screen. This screen has
only 40 columns for text, which is
inconvenient for applications such
as word processing.
Brian McCorkle
"Medium-Resolution Autorun"
allows you to autorun programs in
medium resolution, with a full 80-
column screen. Boot ST BASIC,
type in the program from the list-
ing, save a copy, and then run it.
The BASIC program creates an exe-
cutable program file named MED-
RE5.PRG. (Because the BASIC
program creates a file named MED-
RES.PRG, be sure that you do not use
that name for the BASIC program
itself.) An internal checksum is used
to detect typing errors. If the pro-
gram signals an error, check all of
your typing carefully, especially the
DATA lines.
Inside the AUTO Folder
Once you have created MED-
RES.PRG, select the disk on which
it is to be used. If the disk does not
already have an AUTO folder, cre-
ate one now with the New Folder
option from the desktop. (Click
twice on the disk icon to open its
directory window, then move the
pointer to the File menu and select
New Folder. When the dialog box
appears, type AUTO and press
Return.)
It is very importa^it that MED-
RES.PRG be the first program
placed in the AUTO folder. This is
necessary because the order in
AUTO Folder Example
Desk File ^Ijch Options
n!\nuTQ\
57&7 bytGs used In 1 itens.
HEORES
TIHE4
PRO
PRQ
m
5653
ll-ZO-85
11-20-85
12:85 an
12 HI an
=> r
July 1 987 COMPUTEI 89
which files are run from AUTO is
determined by their times of cre-
ation. The program with the earliest
time and date rtms first; the next
earliest program runs second, and
so on.
Thus, if you have just created
the AUTO folder, be sure to copy
MEDRES.PRG to that folder before
putting any other programs there. If
AUTO already exists, you should
remove everything else from the
folder, copy MEDRES.PRG to the
folder, and then return the other
programs to AUTO.- The act of
copying a file to a new place gives it
a new time and date.
Although the ST's internal
clock keeps time Vidth an accuracy of
two seconds, the time -stamping of
files is accurate only to within one
minute. To be absolutely certain that
the AUTO folder will work correct-
ly, you should allow at least two
minutes to elapse between the time
that you place each file in AUTO.
This ensures that the ST will have
no difficulty deciding the correct
order in which to run the programs.
The figure illustrates an ex-
ample AUTO folder. In this case we
have copied MEDRES.PRG into the
folder first, followed by SET-
TIME.PRG, a short program that
lets you set the time and date. No-
tice the difference in creation times
between the two files. This AUTO
folder will work correctly because
MEDRES.PRG has an earlier time
and date than SETTIME.PRG.
Once you have set up the disk,
press the reset button to try it out.
The disk drive spins as MED-
RES.PRG loads and executes, then
the other program or programs in
AUTO will load and run. If you do
not get the expected results, reread
the instructions carefully and make
sure you have set up the AUTO
folder as indicated.
Simple Yet Effective
Written in assembly language to
save space, MEDRES.PRG is ex-
tremely simple, consisting of only
five calls to system routines. If you
are a beginning assembly language
programmer, or think you might be
interested in learning assembly lan-
guage, this is a good example to
study. A complete source code list-
ing appears at the end of this article.
At the beginning of the source
code are three equate (equ) state-
Source Code Listing
MEDRES.PRG for Atari ST.
Boot in medium resolution from the AUTO folder.
Copyright 1987 COMPUTE! Publications, Inc.
All rights reserved
GEMDOS equ 1
BIOS
equ 13
XBIOS
equ 14
■text
* See whether we're
running on a monochrome system
tnove.w
#4,-(sp)
• Getrez, XBIOS function 4
trap
#XBIOS
* Perform XBIOS trap
addq.l
#2,sp
* Clean up stack
cmpi.w
#2,d0
* 2 = high resolution
beq
skip
• Don't run on a mono system
* Shift to medium resolution
move.w
#l,-(9p)
• 1 — medium resolution
move.l
#-l,-(sp)
* Retain same physical screen base
move.!
#-l,-(sp)
* Retain same logical screen base
move.w
#5,-(sp>
• Setscreen, XBIOS function 5
trap
#XBIOS
• Perform XBIOS trap
add.l
#12,sp
* Clean up stack
* Turn on flashing cursor
move.w
#40,-(sp)
* Flashing cursor
move.w
#l,-(9p>
• Enable cursor
move.w
#21,-(sp)
• Cursconf, XBIOS function 21
trap
#XBIOS
• Perform XBIOS trap
addq.l
#6,sp
• Clean up stack
* Set text color to black (otherwise, it ends up yellow)
move.w
#0,-(sp>
* Black color
move.w
#3,-(sp>
• Color #3
move.w
#7,-(sp)
• Setcolor, XBIOS function 7
trap
#XBIOS
• XBIOS trap
addq.l
#6,sp
* Clean up stack
skip:
* Terminate program and release our memory to the system
clr.I -(sp) • Term, GEMDOS function 0
trap #GEMDOS * Perform GEMDOS trap
.end
ments which define constant values
that appear later in the program. By
giving these numbers meaningful
names, we make the program easier
to understand.
The program begins by check-
ing to see whether you are using a
monochrome monitor. This is a
convenience which allows you to
use the same disks on either color
or monochrome systems. When the
ST is using a monochrome monitor,
it will reboot the system whenever
you attempt to change to a different
screen resolution. Thus, if it detects
that you have a monochrome sys-
tem, the program terminates with-
out changing anything.
All of the GEMDOS and
XBIOS calls in this program follow
the same general pattern. First, you
must push onto the microproces-
sor's stack whatever information
the system routine needs to work.
(The expression sp stands for the
stack pointer, which is actually pro-
cessor register A7.) Second, you
push the number, or opcode, of the
routine you wish to execute. Third,
you execute a trap instruction to
invoke the system routine. Differ-
ent categories of routines use differ-
ent trap numbers. Finally, after
returning from the routine, you
must clean up the stack by adding
as many bytes as you previously
pushed onto it.
When a system routine returns
information to you, that infor-
mation usually appears in the mi-
croprocessor registers DO and AO.
Thus, after executing the first sys-
tem routine, we look at the number
contained in register DO. The
90 COMPUTEI July 1987
cmpi.w instruction checks whether
the value in DO is equal to 2, which
stands for a monochrome (high-
resolution) monitor.
The second system call shifts
the computer into medium resolu-
tion. The first value pushed onto
the stack is \, which stands for me-
dium resolution. This routine also
allows you to change the physical
base or logical base of the display
screen. Since we don't want to
change the screen, we push the val-
ue — 1 for each of these parameters.
The third system call controls
the cursor. The first value pushed
on the stack makes the cursor flash
and the second makes it visible.
The fourth system call sets the
text color to black. If this were not
done, the computer would use the
low-resolution palette and color
assignments, which would create
yellow text on white background.
The final system call termi-
nates the program. While there are
other ways to terminate ST pro-
grams, this is the simplest and
probably the most common. All the
memory which our program used is
released to the system, which takes
back control of the computer.
Medium Resolution Autorun
For ST
100 rem "MEDftES . PRG" filemaker
110 rem Copyright 1 9S7 COMPUTE
Publications. Inc.
120 rem fill rights reserved.
130 data 60, 1 A, 00,00, 00, 4E
140 data 00,00,00,00,00,00
150 data 00,00,00.00,00,00
160 data 00,00,00,00,00,00
170 data 00, 00, 00, 00, 3F, 3C
1B0 data 00,04,4E,4E,54,BF
190 data 0C, 40, 00, 02, 67, 3C
200 data 3F, 3C,00, 01 , 2F, 3C
210 data FF, FF, FF, FF , 2F, 3C
220 data FF, FF, FF, FF, 3F, 3C
230 data 00, 0S, 4E, 4E . DF, FC
240 data 00, 00, 00, 0C, 3F, 3C
250 data 00, 2a, 3F, 3C, 00, 01
260 data 3F, 3C, 00, 15, 4E, 4E
270 data 5C, 8F, 3F. 3C, 00, 00
280 data 3F, 3C, 00, 03, 3F, 3C
290 data 00 , 07. 4E, 4E , SC , 8F
300 data 42, A7, 4E, 41 , 00, 00
310 closeropen "R" , 1 , " NtlEDRES.
PRB", 6
320 field ltl,6 as x«
330 for j=l to 18
340 y«="":for k=l ta 6
350 read z*i byt=val ( "&H" +z») : y
«=y*+chr* (byt)
360 c=c+l:chk=chk+c+byt:neKt
370 Iset •if« = y«:r = r + l;put l,r:n
B>:t
380 close: if chk=J1954 then en
d
390 print "Typing error in DAT
fl":kill "MiEDRES.PRG" ©
Text
File Splitter
For Atari
Frank P. Walters
This Atari utility is especially useful
for telecommunications buffs who
download long text files to disk. It
splits any text file — including those
created by SpeedScript — into shorter
files for more convenient use.
Have you ever captured a long text
file with a modem, and then tried to
edit it in your word processor — only
to find it was too long to fit in mem-
ory? "Text File Splitter" splits a long
text file into shorter ones for editing.
Type in and save the program.
When you run the program, it
asks you for a source filename. This
is the name of the long file you wish
to split. If you don't specify a drive,
the program defaults to drive Dl:.
You must also tell the program the
density of the source disk. Single-
density disks contain 128 bytes per
sector, while double-density disks
contain about twice that much. This
allows the program to estimate the
file size, based on the number of
disk sectors in its directory entry.
You then choose the number of
new files to create, entering a num-
ber from 2-5, depending on the size
of the original file. Finally, the pro-
gram asks that you enter the desti-
nation disk drive number (1-4).
Single Drive Use
This program can be used with just
one disk drive, but you must be
sure that the destination disk has
enough free space to contain the
new files you are creating. The pro-
gram does not close the channel for
the file it is reading between saves,
so absolutely no disk-swapping is
permitted. If you are splitting an
exceptionally long file on a single
drive, you may need to use a DOS
2.5 enhanced-density disk or a true
double-density disk to contain all
the data.
If you have a 130XE computer
and a single drive, you can copy the
source file into the RAMdisk, delet-
ing the DUP.SYS and MEM.SAV
files, if necessary. Format a new
disk to use as the destination, then
run the program and specify drive
08: for the source file and Dl: for
the destination.
The maximum length of each
split file is limited to the buffer size
displayed at the top of your screen.
Other information appears while
the task is in progress.
Ready To Edit
The program saves the new files
with the same filename as the origi-
nal, but with extensions .ZZl, .ZZ2,
and so on, in numerical order.
When the process is complete, you
can load the new files in a word
processor for editing, or do what-
ever you like. If for any reason you
want to reassemble the original file,
go to DOS and use the copy (C)
function with the append (/A) op-
tion. (The copy-with-append func-
tion starts each appended file on a
new sector, so the reassembled file
July 1987 COMPUTEI 91
may use more sectors than the orig-
inal. You can eliminate the extra
sectors by copying the reassembled
file to another disk.)
Since the original file is split at
arbitrary points, there is no guaran-
tee that any of the smaller files will
end with a RETURN character.
Thus, if you print a split file without
editing, the last portion of text may
not be printed unless you force the
printer to print an extra RETURN.
This can be cured by adding a RE-
TURN at the end of the file when
editing. Some editing is normally
needed, anyway, since the split files
probably will end in the middle of a
word or sentence. (You can print
the entire file without losing data if
you copy the unedited split files
from disk to printer with the com-
mand D:*.ZZ?,Pt.)
Text File Splitter
For instructions on entering this program,
please refer to "COMPUTEI's Guide to Typing
In Programs" elsewhere in this issue.
OE 3 REM CQPYRIQHT 19B7 COMP
UTE! PUBLICATIONS, INC.
IZ BPflCESJALL RIGHTS RE
SERVED.
FF 10 READ N0, Nl, N2, N3, N4, Nl
5, N128,N1S3,N255,QIQ0T
D 260
1L20 TRAP 2301CLOSE #N2iOPE
N ttNS.NA+NZiNB.F*! INPU
T «N2|A4iCLaSE «N2
LC 30 IF A»(N2,«2)<>" " THEN
? !? "File not found"
:BOTD 320
CB 40 SEC'VAL(A*(N15,LEN(A«)
) ) ■Q-N0
AA S0 7 I? "ainglB Canhanod
) or [Soubla danslty?";
PD 60 BET ttNl,KiIF K06B AND
K< >B3 THEN 60
KL70 DEN"N12a-N3i IF K-6B TH
EN DEN-N233-N2
ti;B0 ? CHR» (K> lBLDCK-INT(SE
C»DEN/N2SS+1) I? i7 At
HI 90 IF BL0CK<N4 THEN POP i
POP I GOTO 600
ttiee A»-"E"!lF BLDCK/N2>ME
M/N255 THEN A*-"E":IF
BLOCK/N3>MEM/N233 TH
EN A«="E":IF BLaCK/N4
>HEM/N2S5 THEN A»-"E"
IC110 B»-A»lB-N2 + N3i IF INT(
BLOCK/ (ASC(ft*) -176)+0
.3) >riEri/N255 THEN 620
FO 120 IF BL0CK/B<N4 THEN B-
B-NllOOTO 12«
JL 130 B«-CHR« (B+i76> I IF B»<
A« THEN B*-A*
m 140 ? l7 "FllB 1> "iBLOCK
I" BLOCKS long. "I 7 "3
'■!A»j"P";B«;
"I
Bf 1S0 BET *Nl,KiIF K<ASC(A*
)-N12B OR K>ASC(B»)-N
128 THEN 130
Kl)160 FOR I-N0 TO N4iFIL(I>
=N0iNEXT I
JN170 ? CHR* (K> iNUM = K-4BlF0
R I«N0 TO NUM-N2iFIL(
I)-INT ( ( BLOCK /NUM)+0.
999) I NEXT I
nn 1B0 FOR I=N0 TO NUM-N2:FI
HNUM-Nl)=FIHNUf1-Nl)
+FIL(I)sNEXT IiFIL(NU
M-Nl !=BLOCK-FIL (NUM-N
1)
UK 190 RETURN
ED 200 FDR J-Nl TO FILd-Nl)
flH210 A»=" t, >"I A» (N255>-A»i
A«<N2) °A«
Kl 220 TRAP 2401 XIO N4+N3,#N
2,N4,N0, A*
AL230 B«<LEN !B*}-»-Nl)-A«iNEX
T JiRETURN
NC240 POP iB« (LEN(B*}+N1 )-A
•■RETURN
KB23» 7 !? !? "tBELL>ERROR
- " jPEEK(195) ;TRAP 40
000ICLR iEND
01260 DIM A« (N233> , F« (N13> ,
FN« (N13) ,I1« (N4 + N1 ) , FI
L<4) I MEM- I NT (FRE (N0> /
N255) tN233! IF FRE(0)-
MEM<100 THEN MEM-MEM-
N2SS
DIM B»(MEM) iM«-STR» (M
EM) iFDR I-Nl TO LEN (M
*) 1 J-ASC (M* (I , I) ) I J-J
+N12B:M«{I , I ) -CHR»(J)
SNEXT I
0RAPHICS N0;POKE 710,
N12a
? "{4 L^j:irii*a>i>iiii»jaiat:n
t4 aaaaia)":? "BEnctaB
IF 270
HF 280
id; 290
LI 292
CN293
A6 300
tf 310
HB320
Si 330
tE 340
BP 350
19 360
(A 37 0
IIP 38 0
PF390
IIH400
K£ 410
JL 420
RE 430
FI 440
FH 450
CN 460
7 "tB aj;M*l>fn
i4-'mu-^-t-^<i!i=sm
t7 aarH^> "
7 "{5 11 nil I I—. HI I I I
i^";M«; ■ I 1 1 11
CLOSE #N1|0PEN #N1,N4
, N0 , " K : "
7 :7 "Ent»r fllanam*
Df taxt -filB to
to SPACES>ta b* split
into m>VBral fil«s."
TRAP 3201? I? "I«»»=^l
" I s INPUT FN«i IF FN*-
"" THEN 7 "{UP>EIIBEB
13 DELETE> "iSDTO 590
IF LEN(FN»)<N3 THEN 3
70
IF FN* (f41,N2)-"Di " TH
EN FN«-FN»(N3) IQOTO 3
70
IF FN* (N2,N2><>"1 " AN
D FN«(N3,N3) <>"S " THE
N 370
IF FN«(N3,N3)-"i " THE
N F«-FN«lBOTO 380
F»="Dll "lF» (N4)-FN*
DRV-VAL (F«(N2,N2) >
7 17 "Insert dt«k wit
h "|F«(" into"i7 "dlB
k drive "|DRV|" and p
rmmm iJH**l]!l,' "|
BET «Nl,KiIF KONISS
THEN 4*0
7
IF a THEN BOSUB 20t7
"{UP>"|
BET #1 , Kl IF K<49 OR K
>32 THEN 440
FN««=F»I FN»(N2,N2)-CHR
»(K)i7 CHR»(K)
7 I? "Insert SAVE dia
k in drive "|K-48i7 "
and press l?IAilJ:Tr "5
IH 470
IB 480
BA 490
NK 500
Cf 510
AK 520
IL 530
Ce 340
FO 330
BET •
HEN 4
7 I 7
«N2l 0
iB«-"
M
7 "Re
JFIL (
GQSUB
IF I-
r i ng
IF 1-
EN(B«
<LEN(
1 BOTD
IF I-
FDR M
IF FN
FN»{M
>=3TR
50
NEXT
1)="
+ N1)
7 "3«
" 1 INT
.999)
TRAP
EN *N
7 WNS
I, Kt IF K< >Ni55 T
70
I TRAP 250ICLOSE
PEN •N2,N4,N0,F«
"tFQR I-Nl TO NU
ading "iF*|" - "
I-Nl) J ■• BLOCKS" !
200
NUM THEN 7 "Clea
nulls " ;
NUM THEN IF B»<L
) ) -" C, >" THEN B*
B»))-""l? "{,}"J
510
NUM THEN ?
N4 TO LEN(FN*)l
»{M,M)=" . " THEN
+1) ="ZI"1 FN* (M+3
» t I) IPOP t SDTO 5
DO 590
t* 600
eO 610
m 620
DC 630
KD 640
U
OTO
CL08
LOSE
LR t
7 i7
an 1
is p
spll
er t
80T0
7 I7
too
"5
byt
ify
than
7 "D
100
S90
DATA
, 153
t
L><
t
310
E «
»N
END
F*
020
rag
t"t
han
39
" (
lo
May
e b
it
th
IM
-12
BELLJEnnaa
3 BPACESJHlt E
o quit"iQ-NliB
Nil CLOSE ttN2iC
3iTRAP 400001 C
I" has 1
"I 7 "BYT
ram Mill
7 "files
1020 BY
0
BELL> "|F
ng to sp
with "
uf -f er. " I
to spl i t
at I "
FIL(5) . .
0. . . etc .
ess thi
ES. Th
on 1 y
great
TES. "
• I" is
1 i t " I ?
|MEM| "
? "Mod
nore
. LI nes
"1 GOTO
0, 1.2,3,4, 15, 128
253,1 ®
All the programs in
this issue are avail-
able on the ready-
to-load COMPUTE!
Disk. To order a
one-year (four-disk)
subscription, call toll
free 800-247-5470
(In lA 800-532-1272).
Please specify which
computer you are
using,
92 COMPUtfl July 1987
Converter
Graphics Conversion Utility
For The Print Shop'''
Now you can convert graphics from the
popular Print Shop program for use in
Apple hi-res mode, and vice versa. This
utility performs both conversions.
One of the more popular Apple II
programs in recent years is The Print
Shop, which has sparked users' clubs
of its own, workalike programs, and
thousands of graphics pictures that
can be included in Print Shop ban-
ners and cards. Unfortunately, Print
Shop images aren't directly compati-
ble with Apple II high-resolution
graphics. You can't use them in hi-
res screens, and vice versa. "Print
Shop Converter" solves that prob-
lem, allowing you to convert easily
between Print Shop pictures and Ap-
ple hi-res mode.
Starting Out
This program is in two parts. The
main program, written in BASIC,
loads the second portion, a machine
language file, from disk when it
runs. Note that you must enter both
programs using DOS 3.3. This is a
limitation imposed by The Print
Shop itself, which saves files only in
DOS 3.3 format.
Type in and save Programs 1
and 2. If your computer is one that
can't display lowercase graphics,
you will have to type Program 1
Lee SwobodQ
entirely in uppercase.
Program 2 is machine lan-
guage, so it must be entered with
the Apple version of the "MLX"
machine language entry program
printed elsewhere in this issue.
When you run MLX, you'll be
asked for a starting address and an
ending address for the data you'll
be entering. Here are the values
you need to enter for Program 2:
STARTING ADDRESS?
ENDING ADDRESS?
6000
6C08
Note that you must save Pro-
gram 2 with the filename CV. This
is necessary because Program 1 at-
tempts to load Program 2 from disk
with that name. Make sure that
both programs are saved on the
same disk.
Converting
When you run the Converter, it be-
gins by loading the machine lan-
guage portion (Program 2) from
disk. After a brief delay, it displays
a menu screen offering several
choices. If you need instructions
about using the program, select the
option labeled Instructions, The
computer prints out several screens
of instructions, pausing at the end
of each screen until you press a key.
Before converting a picture,
you should understand the differ-
ent format choices. In hi-res mode.
you can load and save pictures in
normal hi-res format or in a special
compressed form which makes a
picture file smaller than usual. Print
Shop mode allows you to load and
save graphics in Print Shop format.
You must begin by indicating
which conversion you wish to
make. The program asks you two
questions, once with the prompt
CONVERT FROM? and again with
the prompt CONVERT TO?. The
choices are the same both times. If
you are using hi-res graphics, don't
worry about whether the picture is
compressed; the program will de-
tect compression and respond
accordingly.
After asking what conversion
you want to make. Converter asks
you the name of the file you wish to
convert. Enter the name of the
source file which you want to con-
vert to a different format. If you
can't remember the filename, press
RETURN without typing anything;
the program prints a disk catalog
and repeats the prompt.
At this point, the program
loads the designated file, then does
one of the following, depending on
which conversion format you have
chosen:
1. If you want to convert from Print
Shop to hi-res format, Converter
asks you what to name the new file.
July 1967 COMPUTEI 93
Type the name and press RETURN,
Converter then asks if you want to
save it as a full-size (8192-byte) hi-
res picture or if you want to com-
press it. If you select a full-size
picture. Converter saves hi-res page
1 intact so you can use it with other
programs or graphics editors. If you
elect to compress the picture. Con-
verter scans hi-res page 1 and
squeezes the file to about half or
two-thirds of its normal size. Com-
pression saves disk space, allowing
you to store more pictures on a disk.
(Note that you will need this pro-
gram to restore a compressed file to
normal hi-res format.)
2. If you are converting from hi-res
format to Print Shop format, the
program first loads the picture, then
draws an 88 X 52 window in the
middle of the screen. This area will
hold the Print Shop picture. You can
move the window around using the
arrow keys. (Apple 11+ owners can
use CTRL-J and CTRL-K to move
up and down, respectively.) At first,
the window moves nine dots each
time you press a cursor key. This
allows you to move in coarse incre-
ments. The number keys at the top
of the keyboard change the incre-
ment to the corresponding number
of dots. If the graphics you want to
save are on the lower part of the
screen (hidden behind the four text
lines), use the F key to turn the full
screen on and off as needed. When
you have finished positioning the
window, press RETURN to save the
graphics contained in the window.
3. After you finish a conversion, or
if you press the ESC key during a
conversion, Converter returns you
to the main menu. From there, you
can quit the program by pressing 0.
How It Works
The Print Shop graphics format dif-
fers from normal hi-res format in
three respects. First, the graphics oc-
cupy only 572 bytes (88 X 52 dots)
instead of the 8192 bytes taken up
by a hi-res page. Second, the dots
are arranged sequentially (with the
second row following the first) rath-
er than in the reverse order of Apple
hi-res. Third, Print Shop uses all
eight bits in a byte rather than seven
bits per byte as with hi-res.
One final caution: The graph-
ics sold by Broderbund and other
commercial software vendors are
protected under United States and
international copyright laws. Mere-
ly converting graphics from one
format to another does not destroy
its copyright protection, so you
should respect the copyright of the
converted graphics just as you
would the original.
Program 1 : Print Shop
Converter
For instructions on entering this program,
piease refer to "COIvlPUTEI's Guide to Typing
tn Progroms" eisewhore in this issue.
F7 10 REM PRINT SHOP <TM>
*9 20 REM CONVERTER
8D 30 REM COPYRIGHT 1987
15 40 REM COMPUTE! PUBLICATIONS,
INC.
4C 50 REM ALL RIGHTS RESERVED.
iE 60 REM
CF 70 TEXT : HOME : HIMEM: Bl"?!
B3 80 FU7. = 0:X0Z ■= 0:Y07. = 0:X1
r. - 0:Yir. - 0IV0X - 0
iP 90 D» " CHR» (13) + CHR» (4):
□« - CHR» (34)
711 100 IF PEEK (4186B) < > 113 T
HEN PRINT "Sorry! You mus
t usv DOS 3.3": END
CC 110 POKE 1013,76: POKE 1014,0
I POKE 1015,96
B2 120 POKE 768,104: POKE 769,16
8; POKE 770, 104! POKE 771
,166! POKE 772,223: POKE
773,134: POKE 774,72: POK
E 775,152! POKE 776,72: P
DKE 777,96
2B 130 PRINT D»"BLDAD CV"
IF 140 IF PEEK (64435) < > 6 THE
N FUX - 6: Sc
2? 150 VTAB 10IHTAB 15: PRINT "PR
INT 3H0P":HTAB 12: PRINT "
CQNVERTE R" (PRINT:
HTAB 13: PRINT "CDPYRIBHT
19B7":VTAB 15: HTAB 7: PR IN
T "COMPUTE! PUBLICATIONS,
INC."! FOR I = 1 TO 2000:
NEXT I
71 155 VTAB 17: HTAB 10: PRINT "
All Rights RasBrved": FDR
I - 1 TO 1000! NEXT I
Al 160 HOME : HQR : POKE 49234,0
IS 170 POKE 44396,234: POKE 4459
7,234: POKE 44398,234
n 1S0 REM
M 190 REM Main Menu
B3 200 REM
M 210 HOME : HQR i POKE 49235,0
EB 220 HOME : VTAB 21: PRINT " C
onv«rt from. . . " SPCi 10) "
0 - Quit"
B? 230 PRINT TAB( 6)"1 = HIRES p
ictur*"
93 240 PRINT TAB < 6) "2 = Print S
hop(tm> graphic"
IC 230 PRINT TAB( 6) "3 " Instruc
tlonm"|i VTAB l! HTAB 1
» 260 FDR I = 0 TD 1 STEP 0
81 270 KB - PEEK (49132) : IF KB
> 127 THEN I - 1
63 280 NEXT l! POKE 49168,0
a 290 F0 = KB - 176: IF F0 < 0
DR F0 > 3 THEN 260
B3 300 IF F0 -= 3 THEN 1690
F4 310 IF F0 - 0 THEN TEXT ! HOM
E 3 END
FB 320 VTAB 21: HTAB 1: PRINT "
Convert to...";: CALL - 8
68
i3 330 VTAB 24: HTAB 1: CALL - 8
68 t VTAB 1: HTAB 1
4B 340 FOR I = 0 TO 1 STEP 0
BB 350 KB - PEEK (49152) S IF KB
> 127 THEN I - 1
ei 360 NEXT I: POKE 49168,0
H 370 IF KB - 155 THEN 210
Et 380 Fl - KB - 176: IF Fl < 1
OR Fl > 2 THEN 340
*i 390 ON F0 GOTO 430,520
Si 400 REM
fifl 410 REM Load HIRES
B9 420 REM
Ci 430 BOSUB 1000
4fi 440 DNERR GOTO 430
C3 450 BOSUB 1660: PRINT D»"BLOA
D"FI«",A«4000,D1": POKE 2
16,2! CALL 76B
Bl 460 FUX - 0: IF PEEK (43616)
+ 236 t PEEK (43617) < 80
00 THEN FUX - 4
IC 470 Ic
M 480 QOTO 560
V 490 REM
te 500 REM Load Print Shop
88 510 REM
a 520 BOSUB 1000
3? 530 ONERR SOTO 520
17 340 SOSUB 1660: PRINT D»"BLOA
D"Fl»",A«3a00,Dl": POKE 2
16,0: CALL 76B
7C 530 FUX - 1: &
2fl 560 ON Fl QOTO 600,770
?4 570 REM
8B 5B0 REM Save HIRES
n 590 REM
13 600 QOSUB 980: HOME : VTAB 21
: PRINT " Sav» thim as...
19 610 PRINT TflB( 6)"1 - Full -si
IB HIRES picture"
FA 620 PRINT TAB ( 6) "2 •= Gompres
«*d HIRE3 picture"
4t 630 FOR I - 0 TO 1 STEP 0
8? 640 KB ■= PEEK (49152): IF KB
> 127 THEN I » 1
14 650 NEXT I: POKE 49168,0: VTA
AA 660
St 670
F7 680
12 690
B 1
IF KB =
F0 = KB
OR F0 >
FI» = Fl*
IF F0 = 1
155 THEN 210
- 176: IF F0 < 1
2 THEN 630
+ ".PIC"
THEN PRINT D»"B
GOSUB 1S30: GOTO 210
= 3: 8i
PEEK (1) - 64
256 t L + 2 » PEEK
SAVE "FI«",A«2000,L«1FFF,D
1"!
75 700 FUX
?E 710 L =
l> 720 L " 256 t L + 2 » PEEK (0
)
K 730 PRINT D»"BSAVE"FI»",fl»400
0,L"L",D1"S QDSUB 15301 B
DTD 210
fl 740 REM
44 750 REM Save Print Shop
?4 760 REM
CF 770 FR - 5: GOSUB 1440
84 780 X0X = 95:V0X = 50: XIX - 1
83:Y1X - 102! FUX - 3: «c
37 790 J = 9
43 300 FDR I - 0 TO 1 STEP 0
44 810 KB - PEEK (49152) : IF KB
< 128 THEN NEXT I
fA 820 POKE 49168,0: & ! KB - KB
- 32 » (KB > 223)
IS 830 IF KB - 141 THEN 930
Fft 840 IF KB - 136 THEN X0X - X0
X - J: IF X0X < 0 THEN X0
X - 0
iC 850 IF KB = 138 THEN Y0X = Y0.
X + J! IF Y0X > 139 THEN
Y0X - 139
AB 860 IF KB - 139 THEN Y0X =■ Y0
X - Jj IF Y0X < 0 THEN Y0
X - 0
94 COMPUTEI July 19S7
= 149 THEN X0X = X0
IF X0X > 191 THEN
191
X0X + BB:Y1X
Y0X
186
155 THEN 210
176 AND KB <
« KB - 176
19B THEN F » 4923
POKE F,0
4B B70 IF KB
X + J:
X0X 1
Ai ae0 XIX -
+ 32
EZ 890 IF KB =
E3 900 IF KB ;
THEN J
K 910 IF KB -
4 + tF - 49234) i
E2 920 & : NEXT I
ii 930 GOSUB 9B0:FUX = 2; «.
19 940 FI» - FI» + ".PS": PRINT
D» " BSAVE " F I « " , A22528 , L376
,Dl"i QDSUB 15308 SOTO 21
0
91 950 REM
BD 960 REM BUBROUTINEB
3E 970 REM File n«nie
91 780 HOME s VTftB 21: POKE 4923
S,0i PRINT "What nan* aho
uld I UB> to aava this?"
22 990 BDSUB 1090: GOSUB 1530: R
ETURN
1000 HOME : VTAB 21; PRINT "W
hat graphic do you want
to convart?"
1010 VTAB 24! PRINT "Pre« 'R
ETURN* for a catalog of
filaa";
3F 1020 GOSUB 1110
ES 1030 IF FI« > "" THEN 1070
77 1040 TEXT ! HOME : PRINT D»"C
ATALDB.Dl"
96 1050 PRINT "PrBBK any k»y to
conttnu*. .. ";; CALL - 7
56 I HQR
(2 1060 QOTD 1000
1070 GOSUB 1340: RETURN
1080 REM Bat fila name
1090 VTAB 23! PRINT "CTRL-X=«E
rasa fila nama" 3PC( 3)"
EaC"Maln menu"
1100 PRINT "<- or DELETE-Dele
te char RETURN-Accapt" j
E2 1110 VTAB 22: HTAB 1: CALL -
868! FI» - ""
14 1120 FOR r - 0 TO 1 STEP 0
7i 1130 CALL - 756: KB - PEEK (49
132)1 POKE 49168,0
1140 KB - KB - 32 » (KB > 96)
IF KB - 13 THEN RETURN
IF KB - 27 THEN 210
IF KB - 24 THEN 1110
IF KB < > B AND KB < > 9
5 AND PEEK <36) » 25 THE
N CALL - 198 I NEXT I
!F 1190 IF KB < > 8 AND KB < 32
THEN NEXT I
M 1200 IF KB < > B AND KB < > 9
a THEN FI« - Fl» + CHR*
(KB) t PRINT CHR* (KB) } :
NEXT I
1210 IF PEEK (36) = 0 THEN CA
LL - 198! NEXT I
19 1220 PRINT CHR» (8) CHR* (32)
CHR* (8) I
C4 1230 IF LEN (FI«) " 1 THEN FI
» " "": NEXT I
93 1240 FI* - LEFT* (FI*, LEN (F
I*) - 1)1 NEXT I
1250 REM Move Mindow frame
1260 BOSUB 1440: &
1270 FOR K - 0 TO 1 STEP 0
SA 1280 KB - PEEK (491S2) ! IF KB
< 128 THEN NEXT K
M 1290 POKE 49168,0: & : KB
- 32 » (KB > 223)
*! 1300 IF KB =- 141 THEN & !
URN
14 1310 IF KB - 136 OR KB - 139
THEN Y0X - Y0X - J * (FR
- DiYlX - YIX - J » (F
R - 2):X0X - X0X - J » (
2E
IS
AC
iS
D2
il
CB
7E 1150
40 1160
69 1170
18 1180
SI
[12
7B
4C
KB
RET
FR - 3): XIX - XIX - J t
(FR - 4)
»D 1320 IF KB - 149 OR KB = 138
THEN Y0X - Y0X + J » (FR
" 1) SYIX - YIX + J » (F
R - 2):X0X - X0X + J « (
FR - 3):X1X - XIX + J «
(FR - 4)
79 1330 IF KB > 176 AND KB < 1B6
THEN J - KB - 176
»l 1340 IF X0X < 35 THEN X0X = 3
5
68 1350 IF XIX > 266 THEN XIX =
266
M 1360 IF Y0X < 0 THEN Y0X = 0
IF 1370 IF YIX > 167 THEN YIX =
167
n 13B0 IF X0X > XIX - 2 THEN X0
7. - XIX - 2
CC 1390 IF Y0X > YIX - 2 THEN Y0
X - YIX - 2
Dl 1400 IF XIX < X0X + 1 THEN XI
X - X0X + 1
111 1410 IF YIX < Y0X + 1 THEN Yl
X - Y0X + 1
7J 1420 St ! NEXT K
94 1430 REM Messages
CB 1440 HOME : VTAB 21: PRINT "A
RROWS - Move";: ON FR GO
TO 1450, 1460, 1470, 1480, 1
490
•4 1450 PRINT " TOP";: GOTO 1490
93 1460 PRINT " BOTTOM";: GOTO 1
490
E7 1470 PRINT " LEFT";! GOTO 149
0
31 1480 PRINT " RIGHT";
iC 1490 PRINT " Window frame"
71 1500 PRINT SPC( 3) "1-9 - Dlst
ance of frame movament"
B7 1510 PRINT SPC{ 5) "F " Turn f
ull screen ON/OFF"
J2 1520 PRINT "RETURN - Accept p
osltion";: VTAB li RETUR
N
3C 1530 HOME ! VTAB 21: PRINT "S
avad a« "□«FI*0«: FOR I
>- 1 TO 2000! NEXT I« RET
URN
4B 1540 A* - "Place the disk con
taining " -f Q* + FI* + □
•i SOTO 1360
3E 1550 A* - "Place the disk you
want to aavo " + Q* + F
I* + Q* + " on"
7! 1560 A* = A* + " in drive 1 a
nd press any key "
12 1570 HOHE : VTAB 21 ! I - 40
li 1580 J - 0
CB 1590 B* = LEFT* (A*, I - J)
« 1600 IF LEN (B») - LEN (A*) 0
R RIGHT* (B*,l) » CHR* (
32) THEN 1620
C6 1610 J - J + 1: GOTO 1590
!C 1620 PRINT LEFT* (B», I - 1)
9! 1630 K - LEN (A») - LEN (B*)
ii 1640 IF K - 0 THEN CALL - 198
i CALL - 198; CALL - 736
; RETURN
24 1650 A* - RIGHT* (A*,K): SOTO
1580
(IE 1660 HOME : VTftB 21: PRINT "L
oading "Q«FI*a*i RETURN
DC 1670 REM
CB 16B0 REM Help
H 1690 TEXT !l = 1
14 1700 HOME : INVERSE : PRINT S
PC ( 15)" CONVERTER " SPC (
lS)i NORMAL t VTAB 3: HT
AB 1
91 1710 FDR J " I TO I + 9
5£ 1720 READ A»: IF A* - "END" T
HEN 1770
8D 1730 PRINT A*: PRINT
D( 1740 NEXT j!l = + I + 9
Z7 1750 VTAB 24: PRINT "Press an
y key to continue... ";
lA 1760 BET B*: PRINT : GOTO 170
0
CF 1770 VTAB 24: PRINT "Press an
y key to continue... ";
« 17B0 GET B»: PRINT : RESTORE
I BOTD 210
94 1790 DATA "Broderbund Boftwar
e's Print Shop (tm) "
i7 1B00 DATA "program uses a spe
cial format to store"
4E 1810 DATA "graphic images. C
DNVERTER converts"
9J 1820 DATA "graphics back and
forth between"
12 1830 DATA "Apple's high resol
ution (HIRES) screen"
DS 1B40 DATA "and Print Shop's f
ormat. You have"
If 1B50 DATA "three choices of f
ormats you can"
ff 1860 DATA "convert to or from
: "
F4 1870 DATA "DA normal Apple
HIRES screen, which"
93 18B0 DATA "will let you store
up to 17 Images on"
25 1890 DATA "a disk."
4E 1900 DATA " 2> A special HIRE
S format that"
9E 1910 DATA "appears normal whe
n you view it, but"
43 1920 DATA "is Stored on disk
in a 'compressed'"
3A 1930 DATA "format that lets y
ou store up to 50"
D4 1940 DATA "images on a disk."
C9 1950 DATA " 3) The standard P
rint Shop image."
7S 1960 DATA "CONVERTER lets you
convert an"
E5 1970 DATA "image in any of th
ese thrae formats to"
31 19B0 DATA "any of the other f
ormats. Just select"
M 1990 DATA "the 'from' and 'to
' format you desire"
M 2000 DATA "from the menus and
CONVERTER will do"
F5 2010 DATA "the work 'automati
cally.*"
BD 2020 DATA "The computer will
add the following"
BF 2030 DATA "prefix or suffix t
o the name you"
Bfl 2040 DATA "choose: "
11 2050 DATA "'filename. PS' for
Print Shop images."
DE 2060 DATA " ' f i lename. PIC for
normal or"
Df 2070 DATA "compressed HIRES i
mages. "
M 2080 DATA "END"
Program 2. CV
Please refer to the Apple "MLX" article In this
Issue betofs entering ttie following program.
6000!
6008:
6010:
6018:
6020!
602B:
60301
6038:
60401
60481
6050 1
605S:
6060!
6068:
AS D9
48 A3
A9 FF
A9 00
00 83
ID 20
>D A9
SD 02
A9 01
7D AC
03 7D
7D 6D
01 7D
18 AD
48 A3
B9 48
83 D9
85 F3
85 A9
ED 6B
00 8D
7D A9
85 BA
02 7D
BC 02
02 7D
6D 03
14 7D
76 48
A9 02
A9 BF
4C IF
70 A0
A5 69
01 7D
00 SD
A9 00
20 BF
7D 18
SD 14
7D SD
69 03
AS B8 46
85 76 EB
83 33 7E
60 A9 £6
00 A2 9E
BD 00 El
AS 6A A6
03 7D 44
AE 03 ID
6B 8E 70
AD 00 4B
7D AD B0
15 7D AS
BD 0E 7B
July 1987 COMPUTEI 95
60701
7D AD 15
70 69 00 BD 0F 4B
6320!
70
AD
19
7D
69
00
80
19
86
6BD0!
E9
28
BS
02 B0
02
C6
03 89
6078:
7D AD BE
70 BD 86 60 AD Fl
6328;
70
A9
5F
80
16
70
A9
00
06
65DB!
A5
02
BS
04 A5
03
18
69 BA
60B0:
0F 7D BD
87 60 AD 00 10 IP
6330:
80
17
7D
EE
02
70
00
03
CC
65E0:
04
85
03
A5 04
38
E9
80 5F
60B8:
BD 00 7D
A9 00 8D 01 7D 10
6338:
EE
03
70
4C
BB
61
EE
04
F0
65EB:
85
04
B0
02 C6
05
A3
04 47
6090!
AE 00 7D
CA 10 06 4C F7 2E
6340:
70
D0
03
EE
05
70
4C
91
91
63F0!
85
06
A5
05 18
69
20
83 31
60981
60 4C CF
60 CA 10 06 4C 8B
6348:
61
4C
CF
6A
A9
FF
80
0C
E7
63F8:
07
A3
07
38 E9
04
83
07 86
60 A0:
69 61 4C
CF 60 CA 10 06 49
6350:
7D
A9
57
80
00
70
20
2D
CF
6600:
18
90
IC
A5 07
C3
03
00 05
60ABI
4C 4C 63
4C CF 60 CA 10 79
635BJ
6S
AD
le
7D
80
00
70
AD
AE
6608:
F0
A5
04
C5 02
00
04
A5 36
60B0:
06 4C BB
64 4C CF 60 CA 72
6360:
19
70
BD
01
70
AO
01
70
F6
6610:
05
C5
03
00 CE
A5
02
00 20
60BBi
10 06 AC
B3 63 4C CF 60 24
6368:
48
4D
ID
70
10
05
6B
30
B7
661S:
B4
88
10
A9 4C
CF
6A
24 98
60C0S
CA 10 06
4C 69 66 4C CF BD
6370:
17
10
12
68
CO
10
70
30
90
6620:
0A
30
3B
A2 00
Al
00
83 3B
60Ce:
60 CA 10
03 4C Bl 67 20 B6
6378:
0F
00
0A
AO
00
70
CD
IC
C4
6628:
0B
C5
0B
00 21
E6
00
D0 6F
60D09
58 FC 20
36 FB 20 22 6B 74
6380:
70
90
05
F0
03
4C
BB
64
pa
6630:
02
E6
01
Al 00
83
09
E6 01
6006:
C6 D5 AS
A0 CD 03 03 04 73
6388:
A9
00
8D
02
70
A9
00
BD
16
6638:
00
00
02
E6 01
Al
00
85 FB
60E0:
A0 C2 C3
A0 C9 CE A0 02 03
6390:
03
7D
AD
03
70
48
49
00
BD
6640:
0B
E6
00
00 02
E6
01
A9 B0
60ES:
CI CE C7
CS A0 B0 AD B7 6E
6398!
10
05
6B
30
13
10
10
68
2A
6648:
80
85
0A
IS 90
00
A3
0B 88
60F0:
00 20 07
68 4C 00 03 A9 A6
63 A0:
C9
00
30
0E
00
09
AD
02
3B
6630:
91
06
E6
00 00
02
E6
01 Al
60F8:
00 BD 00
7D A9 40 BD 01 SF
63 A8:
70
C9
0A
90
05
F0
03
4C
29
665B:
IB
90
A8
AS 0B
91
06
C6 36
6100:
7D fiD 01
7D 48 49 60 10 10
63B0:
AD
64
EE
0C
7D
00
03
EE
2A
6660:
09
00
A0
A9 00
85
0A
F0 AF
610Q:
05 68 30
13 10 10 68 C9 lA
63B8:
00
7D
A9
00
80
0A
70
A9
D3
6668:
9A
20
2D
68 AO
18
7D
80 00
6110:
60 30 0E
00 07 AD 00 7D SA
63C0:
00
8D
0B
70
A9
80
BD
10
9E
6670:
02
70
AO
19 70
80
03
7D BA
611BS
C9 00 90
03 F0 03 4C 66 B4
63C8:
7D
A9
00
80
11
70
A9
00
63
6678:
AD
16
70
BO 00
70
AD
17 92
6120:
61 AD 00
7D 80 2E 61 AD 6C
6300:
80
04
7D
A9
00
BO
03
7D
67
6680:
7D
80
01
70 AO
01
70
48 IC
6128:
01 7D 8D
2F 61 AD 00 10 41
6308:
AD
05
7D
48
49
00
10
05
SB
6688:
4D
IB
70
10 05
68
30
17 B4
6130:
BD 0e 7D
A9 00 SO 0F 7D 59
63E0:
68
30
13
10
10
68
C9
00
41
6690:
10
12
68
CD IB
7D
30
0F 12
6138:
38 AD 00
70 E9 00 8D 02 C6
63Ee:
30
0E
D0
09
AD
04
7D
C9
38
6698:
00
0A
AD
00 7D
CD
lA
70 DA
6140!
7D AD 01
70 E9 20 SD 03 13
63F0:
07
90
05
F0
03
4C
90
64
DD
66 A0:
90
05
F0
03 4C
B5
66
20 6B
6148:
7D AD 02
70 BD 59 61 AD BF
63FB!
A9
00
85
8A
A9
08
AE
03
BB
66Aei
E7
67
EE
00 7D
00
03
EE 45
61S0!
03 7D BD
5A 61 AD 0E 7D A6
6400!
7D
AC
02
70
20
BF
6B
BE
30
66B0:
01
70
4C
84 66
EE
IB
70 CB
6138:
8D 00 10
EE 00 70 00 03 6D
6408:
0F
70
8C
0E
70
18
AD
0E
DF
66B8:
00
03
EE
19 70
AD
lA
70 72
6160!
EE 01 70
4C 01 61 4C CF 43
6410:
7D
6D
04
70
8D
0E
7D
AD
9fl
66C0:
BD
00
70
AD IB
70
80
01 C9
6168:
6A A9 FF
80 0C 7D A9 37 A4
6418:
0F
7D
6D
03
70
BD
0F
7D
83
66CB:
70
AD
IB
7D 80
02
7D
AD B7
6170!
BD 0D 7D
A9 32 BD IB 7D FC
6420:
18
AD
16
7D
6D
0E
7D
8D
27
6600:
19
70
SD
03 70
AO
03
70 91
617B!
A9 00 8D
19 7D A9 5F 8D 32
6428:
0E
70
AD
17
70
60
0F
7D
BB
6608!
48
4D
ID
7D 10
05
68
30 2E
6180!
16 7D A9
00 BD 17 7D A9 30
6430:
8D
0F
70
AD
00
70
AE
0E
6F
66E0:
17
10
12
68 CD
ID
7D
30 14
6186:
00 8D 04
7D A9 00 BD 03 74
6438:
70
AC
0F
70
20
11
F4
Bl
85
66Ee:
0F
00
0A
AD 02
70
CD
IC 4B
6190:
7D AD 03
7D 4B 49 00 10 6D
6440:
26
25
30
29
7F
F0
02
A9
6B
66F0:
7D
90
05
F0 03
4C
06
67 0D
6198:
03 68 30
15 10 10 68 C9 AA
6448;
01
80
12
70
A9
00
80
13
8A
66F0:
20
E7
67
EE 02
70
00
03 36
61A0:
00 30 0E
D0 09 AD 04 7D C2
6430:
7D
AO
11
70
85
BA
AD
10
FE
6700:
EE
03
70
4C D5
66
AD
lA 39
61A8:
C9 06 90
05 F0 03 4C 49 A9
6458:
70
AE
13
70
AC
12
70
20
8E
6708:
7D
00
03
CE IB
70
CE
lA 9D
61B0:
63 A9 00
BD 02 7D A9 00 CI
6460:
BF
6B
SE
09
7D
BC
0B
7D
Fl
6710:
7D
AD
IC
70 BD
02
7D
AD 81
61BS:
SD 03 7D
AD 03 7D 4B 49 73
6468:
18
AD
0A
70
60
08
70
80
05
6718:
ID
70
80
03 7D
AD
16
7D 03
61C0S
00 10 03
68 30 13 10 10 B4
6470:
0A
70
AD
0B
7D
6D
09
7D
35
6720:
BD
00
7D
AD 17
7D
80
01 0B
61Ce:
68 C9 00
30 0E 00 09 AD AS
6478:
80
0B
70
AD
11
7D
0A
6E
36
6728:
70
AD
01
70 48
4D
IB
7D 44
61D0:
02 7D C9
07 90 03 F0 03 IB
64B0t
U
70
6E
10
70
EE
04
70
20
6730:
10
05
68
30 17
10
12
68 00
61D8I
4C 3E 63
A9 00 8D 00 70 0C
6488:
00
03
EE
05
7D
4C
DB
63
DA
67 38:
CO
IB
70
30 0F
00
0A
AD E4
61E0:
A9 00 BD
01 70 AD 01 70 3C
6490:
AO
0C
70
BD
A0
64
AD
00
BA
6740:
00
7D
CD
lA 70
90
05
F0 F2
61Ee:
48 49 00
10 03 6B 30 15 62
6498:
70
80
Al
64
AD
0A
70
80
IC
6748:
03
4C
5A
67 20
E7
67
EE CB
61F0:
10 10 68
C9 00 30 0E D0 17
64 A0:
00
10
EE
02
7D
00
03
EE
8F
6750:
00
70
00
03 EE
01
7D
4C as
61FB:
09 AD 00
70 C9 0A 90 03 20
64AB:
03
70
4C
92
63
EE
00
70
59
6738!
29
67
AD
IC 7D
00
03
CE 11
62003
F0 03 4C
IB 63 EE 0C 7D 75
64B0:
D0
03
EE
01
70
4C
65
63
DB
6760:
ID
70
CE
IC 7D
AD
16
70 03
620B:
D0 03 EE
00 70 AD 0C 7D DC
64BB:
4C
CF
6A
A9
00
83
00
A9
43
6768:
80
00
70
AD 17
7D
80
01 53
62103
BD lA 62
AD 0D 70 80 IB DD
64C0)
40
85
01
A9
FE
B5
09
A9
SF
6770:
70
AD
18
70 80
02
70
AO 61
6218:
62 AD 00
10 BD 0A 7D A9 B3
64CBI
B0
B5
0B
A9
00
83
0C
A0
FD
6778!
19
70
SO
03 70
AD
03
70 3B
6220:
00 BD 0B
70 AD 04 7D C9 C3
6400:
27
A9
78
85
02
A9
20
BS
7B
67B0I
48
40
10
70 10
05
68
30 D7
6228:
06 D0 IB
AD 03 7D C9 00 B3
6408:
03
AS
02
38
E9
28
85
02
40
6788:
17
10
12
68 CD
ID
7D
30 BD
6230!
D0 11 AD
02 7D C9 04 00 63
64E0S
B0
02
C6
03
A5
02
as
04
CF
67901
0F
D0
0A
AD 02
70
CD
IC F4
6238:
0A AD 03
70 C9 00 00 03 98
64E8:
A5
03
IB
69
04
83
03
A3
C4
6798:
70
90
05
F0-03
4C
AE
67 08
62401
4C CF 6A
A9 80 80 10 7D OE
64F0;
04
38
E9
80
83
04
B0
02
AE
67A0!
20
E7
67
EE 02
70
D0
03 FF
624B1
A9 00 8D
11 7D A9 00 8D C4
64F8:
C6
05
A5
04
83
06
AS
05
EF
67 AB:
EE
03
7D
4C 7D
67
4C
CF 16
6230!
06 7D A9
00 80 07 70 AD 00
6300:
IB
69
20
as
07
A3
07
38
A2
67B0i
6A
A5
67
85 06
A5
68
83 80
6258:
07 7D 48
49 00 10 05 68 50
6308:
E9
04
83
07
18
90
20
AS
02
67B8!
07
A0
01
Bl 06
00
03
4C 34
6260:
30 15 10
10 68 C9 00 30 20
6310:
07
C5
05
D0
F0
A5
04
C3
69
67C0:
CF
6A
A0
04 Bl
06
F0
10 FD
6268:
0E D0 09
AD 06 7D C9 07 25
65181
02
00
04
AS
05
C5
03
00
23
67Cei
C9
7F
B0
09 C9
61
90
05 FC
6270!
90 05 F0
03 4C FC 62 A2 CA
6520:
CE
A5
02
D0
B4
B8
10
A9
9A
67D0!
38
E9
20
91 06
C8
00
EC 33
62781
00 20 F0
F6 3S AD 10 70 EB
6328:
A9
80
83
0C
18
90
2A
Bl
62
67T38i
A0
00
Bl
06 AA
ca
Bl
06 70
62B0I
E9 01 BD
12 70 AD 11 7D 8F
6530:
06
24
0B
30
24
C5
08
00
84
67E0I
B6
06
85
07 38
80
02
AD 60
62883
E9 00 BD
13 70 AD 0B 7D 3B
6538:
20
A6
0A
E0
FF
F0
lA
E6
EA
67E8I
02
7D
AE
00 7D
AC
01
70 0C
62901
48 4D 13
70 10 03 68 30 9C
65401
0A
ES
E0
04
B0
0E
C3
09
FB
67F0I
20
11
F4
Bl 26
25
30
29 ID
629BS
2C 10 12
6S CD 13 7D 30 26
6348:
F0
0A
A2
00
81
00
E6
00
3C
67FBI
7F
F0
02
A9 01
80
08
70 6A
62A03
24 D0 0A
AD 0A 70 CD 12 BB
6330:
00
02
E6
01
85
08
18
90
FD
6800:
A9
00
BD
09 70
A2
00
20 7E
62 AB:
7D 90 lA
F0 18 A2 03 20 14
6558:
B6
AA
48
98
48
BA
A2
00
60
6808:
F0
F6
AO
08 70
C9
00
00 29
62B0i
F0 F6 3B
AD aA 7D ED 10 BF
6560:
C5
09
D0
05
A0
02
91
00
EA
6810!
0C
AD
09
70 C9
00
00
03 40
62B8:
7D BD 0A
70 AD 0B 7D ED 3B
6568:
ES
A3
00
38
E9
03
BS
00
FA
6B1B:
A2
03
20
F0 F6
AD
02
70 FD
62C0:
11 7D BD
0B 70 18 AD 16 8D
6570!
B0
02
C6
01
24
0B
30
17
CI
6820!
AE
00
70
AC 01
70
20
11 12
62C8:
70 60 06
70 80 12 7D AD 9D
6578:
A5
0A
C9
04
B0
06
A3
0B
03
6828:
F4
20
5A
F4 60
18
AD
14 ES
62D0:
17 7D 60
07 7D BD 13 7D 64
6580:
CS
09
D0
0B
A0
00
A5
09
94
68301
70
69
0A
SD 00
70
AC
15 9A
62DB:
AD 18 70
AE 12 7D AC 13 08
6588:
91
00
ce
A5
0A
91
00
86
AC
6B3BI
70
69
00
8D 01
70
AD
00 54
62E0:
70 20 11
F4 20 3A F4 AD DF
6390!
0B
AS
00
E0
01
IB
D0
0S
67
68401
70
SO
4B
68 AO
01
7D
8D ID
62Ee:
U 7D 0A
6E 11 7D 6E 10 29
6398:
69
06
B8
30
02
69
03
85
F6
6848:
4C
68
AD
00 10
80
16
7D 6F
62F0:
7D EE 06
70 00 03 EE 07 40
6SA0:
00
90
02
E6
01
A9
01
85
74
6830!
A9
00
80
17 70
AO
00
70 39
62FSI
7D 4C 37
62 IB AD 16 70 CI
65 AB:
0A
68
AB
68
24
0C
10
96
36
68BSI
D0
03
CE
01 70
CE
00
7D E0
6300:
69 08 BD
16 70 AD 17 7D DE
63B0:
4C
CF
6A
A9
00
83
00
A9
3D
68601
AD
00
7D
SD 60
68
AD
01 F9
6308:
69 00 SD
17 70 EE 00 7D CB
65B8:
40
85
01
A9
FE
83
08
A9
87
68681
70
BD
6E
68 AO
00
10
80 CA
6310:
D0 03 EE
01 70 4C E5 61 38
65C0:
00
S5
0A
A0
27
A9
78
85
BE
6870!
0E
70
A9
00 80
0F
70
A9 2A
&31B:
IB AD IB
70 69 01 8D 18 B3
63Ca:
02
A9
20
85
03
A3
02
38
46
6878 1
01
85
8A
A9 00
AE
0F
7D 60
<J6 COMPUTEI July 1967
A8B0
6BBS
&S?0
&S9S
6BA0
68A8
iiBB0
bBBB
6BC^
^acs
&SD0
68DB
68E0
6BF0
tape
6900
6900
6910
691B
6920
692B
6930
693B
6940
694B
6950
695B
6960
696B
6970
6978
69B0
69ee
6990
699B
69A0
69AB
AC 0E
7D ac
6D 0E
7D 6D
AD
AD
AD 00
7D BD
le 7D
AD 14
AD IS
AD 00
7D BD
lA 7D
00 7D
00 7D
AD 01
10 QD
7D A9
0F 7D
BE 0F
lA 7D
AD
7D
00 7D
01 7D
AD 01
10 BD
7D 18
02 7D
03 7D
AD 03
10 BD
7D AD
7D CE
Al 69
AD 00
BD 0F
7D 20
0E 7D
7D BD
0F 7D
7D 69
7D 69
7D 8D
BE 6B
A9 00
7D 69
7D 69
7D 8D
E6 68
A9 00
D0 03
AD 00
7D BD
0E 7D
01 85
AC 0E
7D ac
6D 0E
7D 6D
AD 14
AD 15
AD 00
7D BD
IC 7D
AD
AD
AD 02
7D BD
00 7D
02 7D
02 70
AD 03
10 BD
7D A9
BF 6B
IB AD
16 7D
BD 17
11 SD
00 BD
BD 6B
AD 00
BD 19
IS BD
00 BD
E5 68
AD 00
8D IB
CE 01
7D BD
0B 69
A9 00
6A A9
7D 20
0E 7D
7D BD
«F 70
70 69
70 69
70 BD
58 69
A9 00
7D 69
70 69
7D 8D
B0 69
A9 00
D0 03
AD 02
7D 8D
0E 7D
01 as
AD
70
BE 0F B4
16 70 F5
17 3D
IS 19
00 7D CF
01 7D 91
AO 01 CC
10 SD 25
7D IB 16
00 7D 30
01 7D B9
AD 01 36
10 SD 32
7D AD DC
70 CE AF
07 69 78
AD 00 B3
8D 0F 37
00 AE 2E
BF 6B 9F
IB AD BA
lA 7D C9
BD IB CB
IF BD 24
00 BD 96
57 69 EA
AD 00 86
SD ID 77
26 BD 5A
00 BD CI
7F 69 B4
AD 00 70
BD 01 FF
CE 03 D0
7D BD EB
A2 69 4D
A9 00 DE
SA A9 2D
69B0I
69B61
69C0:
69CB1
69D0I
69DBI
69E0I
69E8I
69F0!
69FB1
6A00:
6A0BI
6A10S
6A18:
6A20:
6A28!
6A30:
6A3B:
6A40:
6A4S:
6A50!
6A5B:
6A60:
6A6a:
6A70:
6A7B:
6A80:
6ASe:
6A90:
6A9Bi
6AA0:
6AASS
6AB0:
6ABS:
6AC0:
6 ACS:
6AD0:
6ADai
AO
7D
00 AE 0F
BF 6S BE
IB AO 00
00 7D AD
aO 01 7D
7D A9 20
70 85 ae
A0 08 20
BC 0A 7D
AD 08 7D
49 6B SE
A9 00 SS
7D AC 0A
0F 7D 8C
7D ED 0E
09 70 ED
3B AD 0E
0E 7D
8D 0F
00 AE 0F
BF 6B BE
18 AD 06
06 7D AD
80 07 70
80 AE 0B
BF 6B SE
18 AD 06
06 7D AD
BD 07
2S AE
BF 6B
18 AD
06 7D
8D 07
04 7D
6D 05
B3 B9
68 BS D9
7D
00
BE
06
AD
7D
BD
7D
68
70 AC
0F 7D
70 60
01 7D
60 A9
BD 07
AD 08
49 6B
AD 09
A2 00
00 7D
BA A9
7D 20
0E 7D
7D BD
0F 70
7D ED
0F 70
A9 04
7D AC
0F 7D
7D 6D
07 7D
A9 00
70 AC
0F 7D
70 60
07 70
A9 00
7D AC
0F 70
70 60
07 70
18 AO
06 70
9D 07
85 BB
A9 SD
0E 7D
BC 0E
0E 7D
6D 0F
00 BD
7D AD
7D A2
8E 0B
7D 85
A0 40
BC 0C
08 AE
BF 6B
38 AD
0E 7D
BD 0F
0C 7D
ED 0D
83 8A
0E 7D
SC 0E
0E 70
6D 0F
85 8A
0A 70
BC 0E
0E 70
60 0F
85 BA
0C 7D
BC 0E
0E 70
60 0F
06 70
AO 07
7D 60
68 83
SD 01
20
Al
7D
C0
BD
0F
7D
FO
06
CE
09
44
00
3B
7D
CF
88
E8
20
Al
7D
AA
0B
E0
BE
40
08
76
AD
16
7D
4D
BD
4E
7D
55
A9
DE
20
3B
7D
SA
80
69
70
FA
A9
E4
20
13
7D
82
80
91
70
23
A9
00
20
57
7D
AA
80
B9
70
4B
60
35
70
37
6B
73
76
23
02
BF
6AE0:
6AEB:
6AF0:
6AF8:
6B00!
6B0B:
6B10:
6B1B:
6B20!
6B2Si
6B30:
6B3B:
6B40:
6B4S:
6B50:
6B3B:
6B60:
6B6Bt
6B70:
6B7B:
6B80:
6B8B:
6B90:
6B9B!
6BA0:
6BAB:
6BB0:
6BBB:
6BC0:
6BC8:
6BD0:
6BDB:
6BE0:
6BEB:
6BF0:
6BF8:
6C00:
6C08:
A9 01
60 00
8E E9
AE E9
EE E9
E9 6A
F0 0D
03 BE
BE FO
A0 01
C9 A0
6A C8
B5 B5
00 85
00 84
0E 38
A9 00
BS 10
83 87
C8 84
88 26
E5 89
06 E6
10 E3
00 E5
8B 85
85 85
A6 BO
B9 84
85 85
00 18
A5 BA
26 8A
A4 83
37 A0
00 02
87 30
59 20
85 34
C9 84
6A 60
6A F0
6A 60
A9 00
A9 80
90 E7
68 83
Bl 85
90 02
D0 EE
90 02
87 84
86 94
A9 00
E5 BA
0E 38
A9 00
8B A2
85 26
A8 A5
B7 85
A5 8B
87 85
BB 3B
A9 00
A4 B7
87 86
86 46
A5 B9
65 86
A5 SB
A6 86
00 A9
E6 B6
04 CA
46 49
A9 OD B5
D0 06 A2
C9 SD F0
07 9D FF
4C ED FD
BD E? 6A
9D FF 01
4C 0C BE
83 68 85
F0 0E 09
05 F3 20
3B 98 65
E6 86 6C
89 86 BA
85 S8 BA
E5 B9 as
as BA C8
A9 00 E5
E5 88 85
0F 06 87
86 38 A5
86 E5 BA
B6 84 85
D0 lA 3B
87 A9 00
A9 00 E5
E5 86 85
A5 86 60
88 A9 00
ae 66 87
65 as as
85 86 06
05 87 D0
60 85 86
00 91 85
BA D0 04
4C F3 6B
49 20 3A
33
CI
01
54
0F
S0
01
AB
AE
E0
SA
17
20
BF
4C
0D
86
S2
80
70
EA
69
B5
F3
as
ID
A0
D3
10
D4
89
63
A5
FE
87
6D
BB
06
26
36
B5
IE
90
95
CA
89
A9
E6
E5
03
85
58
86
BB
85
9F
85
47
90
76
85
53
89
16
E3
76
84
5B
CB
68
C6
64
60
3F
4A
7C
©
••3
PROFESSIONAL
HANDICAPPING SYSTEMS
PROFESSIONAL SERIES '
>v« PHOFESSIO.VAL SERIES" ■^■1Kv,.fM..rll..s,
:^
<^
-V.v~
Vtininfl}\}iiTi Orutajnri T*U!tT/l'iutT
' MlnlrProAniJyrti'^ S 1 -IS !ir.
roiiiiilric ran- iinalysls for the sopMstk'uli-d hniidl(:»|ipfr wiih
^lin;]r s4Trcn InjitJi, holrilnii lanks lo chrck rnlrlrs, powerful use nf 3t)
v;ir1. lilies ixi djLi nunipulallnn. complelc "HE.U"" fiiiiClUiria. and more.
' AtUfyihMDdiik:'^ S249.9G
Oi,:r coniprelienstvt. TuU featuml pdckafie craiiaitiii ktlnl-Pro Ana-
lytli plus ^iiint; anoh-aes. monty manafitrs, pcBt position adjuiiers.
ft.!ci]nnnl .-^rijusirT?. muUi-lrack ablttllcn.. watch Kill*, and fm-M:rccn
lurtllnft pfu^ospliy
• MuttlplcIUsnaKkmMQdiile'*' «MS'<ib
L'aliti; lliirar ir^rrRSInn, this mtxliilr irgrrMicit mil farlnr^ TrlaL!;if;
lo Wlfiniiia aninuls and then iiujtjnuillr.illy mr.-ilculiilcs Hhc ^vcJ;^lhl!^jI
ronmila as snccrtsue races ajc aualjvrd to dcrrvc the most precise
fnmwila iK)ss;il]te. dram at locally IncrcaslnR win ptrctmafft'
5flL CJi?Vt AJJAIYJIS ClUSmi? MJAlYStS
I'HOnasia-iALLOTreKif/LOTiO'"' si-ianr.
CiitMiiA rdi^e ailiilyiica fur Ihr iwrlnun prnfrssKiiinl CnnluliVH Hrll
Curvif. C^inml TfiMicncy. Cluilcr i\iiii!vi>il». nnd 17 tllnlLtrciv Systeins.
Inr rampktt?. luiih accuracy anal^-ms ai Loiiriy pt tjdia.
^Q^
Cumtilalh-rf^iiil^
Last A wctk>
l^?t 2 WTfks
FROnSSKMALSEHI^FDOtBAU,'' SI99M
i\ Ilcjtlbtf. hli^h prd'oniiiiticr hmlball nniLlysIa wUh romplclc biill!-
in Khcdiilinfi. fxcrlJcni file Cjpacily. ftlnjjk ll'ipitt for iwo iram*. nnd
hLftli !ircurac>; ronlains ptcdsctors for Kenm actirts., ovrf/undcr, noii-
Ix-is. rrciilarlwip ,ind sitperbets. Tli« refiitiHAiRii Analysis is Ailju&ijbtr m
Rivr ipMi:ts h.iwd on any nuniber u! prrtKiu* wrrks.
BOOOKIE buster: « FOOTBALL AJSALYSB Sl^S.Oy
A htph acc'iracy fooLball jmiih'3is usirlfi 2 1 scpjirntr and stnrcliircd
iDrnMNFLfinnicsftuiU l9?fl lo lySBlo
an^ilyscs and a complew dauha:
prt-ilii:! ilir sjircnd winner.
Tefm»: FfcL- sililppinj? nil software Add *ri (XJ COD / 96,(Xl UPS Hiiir /
$y f 10 Inicnmiluniil delhciy / ID resident:! ndri 5'*. Allnw 3 wrclis wlicu
p.iiil Uy pprronal check. Pncf* nb^wt are for cash or inonty order Cfiily
AiUl .1% fnr VK3. MaalfTdiftrfii?. .intl AMRX Pncf •» 5;ili]ert lo clianfic.
Many more programs available.
CnH today for a copy of our FREE CATALOG!
THE AMAZING
V€ICE AiASTCP
ENfER
THE FINAL
FRONIIER
OF
MAN-JO-MACHINE
COMMUNICAJIONS
There is nothing else like
it Voice Master gives
both speech output
and voice recognition with this single hardware product! Your voice
controls progroms, or home appliances, robots, and more with spoken
commands. Verbal response back gives status, verifies, or requests your
reply! Speech output and recognition patterns ore recorded in with your
voice. Or use the voice of your friend, boss, teacher, mother, even the
fomlly petl Programming is si mpie with new commands added to BASIC.
A music bonus progrom lets you write and compose musical scores
simply by humming the tune. Unlimited oppiicotions for fun. education,
and commercial use. Design your own programs for profit. Speech and
recogniton quglity unsurpassed by even the most sophisticated
mochlnes. Only Covox provides this high-tech marvel at a price less than
nrrast common peripherals.
The CovoK Voice fvloster comes complete with all hardware and software
for only S89.95. (Add M shipping and hondllng for USA. S6 Canada, S10
overseas. ) Available for Commodore 64/1 28. Apple ii. II+. lie. lie. Atari BOO.
600XL 1 30 XE. Specify when ordering. Visa. MosterCord phone orders
occepted.
Call Of mite for FREE Voice Master Infopak
and special combination package Qtfers.
CX>VOX iNC.DEPT.C!
675-D Conger Street • Eugene, Oregon 97402 • U.SA
AfeaCode(S03)3J2-1271 » Telet 7CI6017(AvAiormUD)
July 1987 COAfPUTEt 97
IBM Printer Control
Now you can send printer control
codes from DOS with a program that
understands your own commands.
One of the most common, and
sometimes bothersome, tasks for
any IBM PC/PCjr user is sending
control codes to a printer prior to
printing. "IBM Printer Control" is a
compact, convenient program
which is customized exactly for
your needs. It can send a variety of
different commands to the printer,
using command names that you
have devised.
Before you type in the pro-
gram, decide what control codes
you want to use. Consult your
printer manual to determine the
control codes for the features you
want. For each feature, select a de-
scriptive name to be used when you
invoke the printer control program
from DOS. For instance, you might
use the names DS-ON and DS-OFF
for the commands that turn double-
strike printing on and off.
Lines 1200-1231 of the pro-
gram contain DATA statements
with example commands and con-
trol sequences. The commands are
the words you will type from the
DOS prompt to invoke the corre-
sponding features, and the num-
bers following the commands are
the control characters for those
commands. Some commands, such
as BKSPC (backspace) are very sim-
ple, consisting of only a single char-
acter. Others contain a sequence of
several control characters. If you
frequently use a certain sequence of
commands, you might want to put
the entire sequence into a single
command. The NORMAL command
in line 1209 is an example of one
such sequence.
Notice that each control se-
Ronold Dorchester
quence ends with the value — 1,
which is a marker indicating the
end of the sequence. The last con-
trol character is a carriage return
(character 13). The carriage return
causes the control sequence to take
effect immediately, allowing each
command to execute independently.
When you type in the program,
edit lines 1200-1231, adding or sub-
stituting your commands for the ex-
ample commands. The name of the
command must come first, followed
by its control characters, and the
value — 1 . The command names can
be any legal DOS name; however,
no name extensions are allowed.
After making all the necessary
modifications, save a copy and then
run the program. If you made no
typing errors in your DATA state-
ments, an executable machine lan-
guage program called PRNCTRL
.COM will be written to disk. Like
other machine language programs,
this one is run from the DOS
prompt by typing its name (the
.COM extension is optional). If you
type PRNCTRL from the DOS
prompt and press RETURN, the
program prints all the command
names which it understands. This is
a convenience in case you forget
some of the command names. The
normal usage is to supply the name
of one or more commands. For in-
stance, assuming you included a
command named NORMAL, the
following invokes PRNCTRL, send-
ing the NORMAL command to reset
the printer to its default condition:
PRNCTRL NORMAL
You can send more than one
control sequence at a time. For
instance, you might use this com-
mand to turn on compressed and
double-strike mode:
PRNCTRL CMP-ON DS-ON
HE
100
W
110
FH
111
LK
120
HH
125
SD
126
If you supply an invalid com-
mand name, the program displays
the error message Invalid Option
and returns to the DOS prompt.
PRNCTRL.COM Filemaker
For instructions on entering this program,
please refer to "COMPUTEt's Guide to Typing
in Programs" eisewhere in this issue.
* Printer Control
' Copyright 19B7
' Compute! Publications,
Inc.
' All Rights Raservod.
CLS!PRINT"Copvright 1*?B7"
sPRINT-'Computs! Publicatl
on«, Inc. "iPRINT"All Righ
ts R>Barv>d. ":FOR X-1 TO
1500: NEXT
CLSiDEFINT I : FOR 1-0 TO 5
tREAD MSB*(I):NEXT
READ PBri»,IlI1flX,1 2MflX , QBT
OTCK, ILDF
I PASS- IPASS+1:PRINT MSB» (
IPABS):IF IPA3S-0 OR IPfiS
S-3 THEN 1000
PRINT: IF IPASS-2 THEN OPE
N PSM» AS #1 LEN-1: FIELD
#1,1 AS BYTE*
RESTORE 501:HRTDT-0:FDR 1
1-1 TO UMAX: FOR 12-1 TO
I2riAX
READ H»:IBYTE=VAL{"8tH"+H»
) 1 ITDT-ITDT+IBYTE
IF IPASS-2 AND ICLDF<ILOF
THEN LSET BYTEt-CHRtCISY
TE)!PUT #ltICLOF-ICLDF+l
NEXT I2:READ I CHECK: IF IC
HECK-ITOT BDTD 210
PRINT MSG*(4>;500+H!lPAS
S— 1
eRT0T=GRTDT+IT0T5 ITOT»0: N
EXT I1:PRINT
IF IPASS>0 AND QRTOTCK-BR
TOT GOTO 140
IF IPASSO-1 THEN PRINT M
SG«(5>:END ELSE GOTO 140
DATA Correct Errors. ,Chec
king DATA Lines. .Creating
Program.
DATA Program Created., Err
or (s) On Line -.Check Lin
e S00.
DATA " A : PRNCTRL . COM " , 24 , 1
6,34236,381
DATA E9,AC,00,0D,0'?,0D,0A
, 50, 52, 4E, 43, 54, 52, 4C, 20,
20, 1063
DATA 2D, 20, 20, 4F, 75, 74, 70
, 75, 74 , 20, 50, 72, 69, 6E, 74,
65, 1424
PJ 130
an 131
m 140
Bl 150
BH 160
FP
170
PF
1S0
JL
190
JL
200
W
210
an
220
AH
230
HA
300
HI 310
BI S00
m S01
FD 502
98 COMPUTE! July 1987
LK 503 DATA 72, 20, 43, 6F, 6E, 74, 72, 6F, 6C, 20, 43
,tF,i4,63,73,2E, 1455
CC 504 DATA 0D, 0fl, 43, 6F, 70, 79, 77, 72, 69, 74, 65
,20,52,&F,6E,61, 1421
NI S0S DATA 6C, 64, 20, 44, 6F, 72, 63, 68, 65, 73, 74
,65,72,2tS,31,39, 1421
m 506 DATA 3B,36,0D,0A,09,20,20,31,30,39,34
,37, 20, 43, 72, 6F, 791
HP 507 DATA 77, 6E, 20, 50, 61 , 72, 6B, 0D, 0A, 09, 20
,20,53,61,6E,20, 1077
n 50a DATA 41,6E,74,6F,6E,69,6F,2C,20,54,5a
,20,20,37,36,32, 1201
KA 509 DATA 33, 39, 0D, 0A, lA, 0D, 0A, S6, 61, 6C, 69
,64,20,4F,70,74, 1015
IH 510 DATA 69,6F,6E,73,20,41,72,65,3A,0D,0A
,0D,0A,49,6E,76, 115B
« 511 DATA 61,6C,69,64,20,4F,70,74,69,6F,6E
,3A,20,07,01,BE, 1363
BE 312 DATA 80, 00, AC, 3C, 00, 77, 12, 80, 3E, AE, 01
,01,75,06,EB,7A, 1340
01 513 DATA 00,ES,S6,00,B8,00,4C,CD,21,BF,SC
,00,B8,03,29,CD, 1580
JL 514 DATA 21 , 80, 3E, 5D, 00, 20, 74,DF, S6, BB, 7D
,02,a3,3F,00,74, 1397
EK 515 DATA 2B, BF, 5D, 00, 8B, F3, B9, 08, 00, F3, A6
,74,08,88,77,08, 1701
FN 516 DATA 8D,5S,0A,EB,E7,C:6,06, AE,01 ,00,BB
,4F,08,eB,D3,B3, 1791
a 517 DATA C2,0A,BB,04,00,D4,40,CD,21.3E,EB
,BD,EB,2C,00,BA, 1857
n 518 DATA 9B,01,B9,13,00,Ea, 17,00,C7,06,65
,00,0D,0A,BA,5D, 1223
II 51? DATA 00, B9,0C:, 00, ES, 08, 00, E8, 20,00,88
,FF,4C,CD,21,50, 1334
KI 520 DATA 53,BB,02,00, B4, 40,CD,21 ,5B,S8,C3
,C6, 06.84,01,20, 1497
UN 521 DATA BA,05,01 ,B9, B0,00,Ea,EA,FF,C3,BA
,85,01,89,16,00, 1944
W 522 DATA Ea,DC,FF,BB, 7D,02,B8,20, 20,a3,3F
,00, 74, IE, SB, D3, 1959
KJ S23 DATA SD, 7F,08,aB, 35,BD,58,0A,83,3F,00
,75,03,B8,0D,0A, 1228
KF 524 DATA 87, 05, B9, 0A, 00, ES, B7, FF, 87, 05, EB
,DD,C3, 00,00,00, 1796
LJ 1000 IF IPASS=0 THEN END
Pfl 1010 DIM IB (12a>: RESTORE 1200! PRINT "Addi
ng Printer Control Stataments. . . "
CH 1020 CMD«=>SPACE«C8):READ RD«
OH 1030 IF RD«="/«" THEN LBET BYTE*=CHR» (0) !
PUT #ltPUT #1 SPRINT "Done.": END
ND 1040 MID* (CMD«, l)=RD»t PRINT SRC (5) ; CHR« (3
4>|CM[}«:CHR«(34}
HI 1050 FOR 1=1 TO 8: IC=ASC(MID»(CMD»,I,1)):
IF I096 AND IC<123 THEN IC-IC-32
LC 1060 LSET BYTEt=CHRS(IC) :PUT #1:NEXT
Hft 1070 IB>;=0:READ ICs WHILE IC>=0 AND IC<=25
5: IBX-IBX+1: IB(IBX)-IC:READ ICrWEND
MI 1080 LSET BYTE*=CHR»(IBX MOD 256 >s PUT «1:
LSET BYTe»-CHR»(IBX\256)!PUT *1
OL 1090 FDR 1=1 TO IBX:LSET BYTE«=CHR« ( IB ( I)
):PUT #1; NEXT: SOTO 1020
HN 1100 '
Jt 1110 * Printer Control Statements.
OB 1120 ' Format! DATA cmd-name,code, <co
da, ...>-l
HB 1130 '
on 1200 DATA CR, 13,-1
16 1201 DATA LF, 10,-1
m 1202 EiATA FF, 12, 08, 13,-1
U 1203 DATA BKSPC, 08,-1
6E 1204 DATA LPI-6, 27, 50, 08, 13, -1
CK 1205 DATA LPl-8, 27, 48, 08, 13, -1
FK 1209 DATA NORMAL, IB, 27, 70, 27, 72, 27, 50, 08,
08,08,08, 13,-1
DL 1210 DATA CMP-DN, 15, 08, 13, -1
H6 1211 DATA CMP-OFF, 18,08, 13,-1
fK 1220 DATA EMP-ON, 27, 69,08, 13, -1
« 1221 DATA EMP-DFF,27,70,0a,13,-l
EO 1230 DATA DS-QN, 27, 71 , 08, 13, -1
8H 1231 DATA DS-QFF, 27, 72, 08, 13, -1
ff 1500 DATA /t :'Mar
ks End Q-f Printer Control Statemants
Modem
Promotion!!!
The Best Modem for as low as M)^wi«7t).
Everything from Electronic Mail (E-mail) to stock quotes and
huge databases of every imaginable type is now on-line just
waiting for you to dial up. All you need is a telephone line and a
modem connected to your Computer which allows you to
download this information.
Which modem is best for you? Lets first say that almost all
modems (and services) are set up to communicate in one of two
speeds; 300 and 1 200 Baud, if you look around you will find that
there is a flood of 300 baud modems on the market and
sometimes at very low prices. The reason is simple. They are be-
ing dumped because most computer users prefer 1200 Baud.
(1 200 Baud is about 4 times as fast which means you spend less
time and money getting the data you want and more time using it.)
You will also notice a few very cheap 1 200s on the market at "too
good to t>e true prices". They are. Most are cheaply built foreign
copies of American designs. The service and support you receive
is minimal-to-nonexistent for many of these models.
Recently we re-evaluated our modem line and discovered that
the tiest price/perfocmance tradeoff for our customers would be a
straightforward, easy-to-use unit with no complicated switch set-
tings or indicators, but one that just did what our customers
wanted. To our surprise (and contrary to popular belief), we found
that we could build this product with better reliability and perfor-
mance levels in the USA than anywhere else. We found that
because of a significant increase in reliability that American com-
ponents and manufacturing give us, we now have (he best pro-
duct possible. Why not get a modem that will satisfy your present
AND future needs by going directly to the American built Aprotek
12 series modem.
What do you gel for your money? Everything! You don't need
to worry about cables, compatibility or anything else! We don't just
make hardware, we make solutions. Our modems are full feature,
300 and 1200 Baud units with
Auto Answer, Auto Dial, Touch-
Tone or rotary dialing, and have
status indications on screen to let
you know what is happening all the
time. They come complete with
terminal programs and have a built
in speaker, so that you can hear it
dial and connect. Just plug it into your computer and standard
phone jack with the cable suppiied.
STILL NOT SURE? Aproleks' reputation as a first rate peri-
pherals supplier and our 5 year warranty on the 1 2 series plus our
2 week satisfaction or your money back guarantee tells you that
we support our products.
The bottom line:
Aproiek 12C (Commodore) order #12C only $ 99.95
Aproiek 12AM (AMIGA) order #1 2AM only $11 9.95
Aprotek12AT (ATARI ST) order #12AT only $11 9.95
Aprotek 12R(RS-232 all others) order #12R . . only $119.95
Shipping-Cont US. = $5., UPS Blue, Can. AK, HI, APO = $10.
ORDER INFORMATION California residenE add 6% lax. All prices are
cash prices-VISA and MC add 3% to total. We ship the next business day on
money orders, cashier's checks, and charge cards. A 1 4-day clearing period
is required for checks, Prices and availability subject to change — CALL
Available at Selected Dealers. Deafer inquiries Invited.
For information call 805/987-2454
TO ORDER CALL TOLL FREE
1 (800) 962-5800 • USA
1 reoO) 962-3800 ■ Calif
(7-7 PST)
(800) 962-3800
Or send order to:
Ipnr^JKL/ Dept. 1071-A Avenlda Acaso
*«>>-'l>''V CP Camarillo, CA 93010
Auto-Display Hi-Res
Picture IVIaker
From a reader hi Hong Kong, this
utility turns any Apple U hi-res
picture into a file that you can BRUN.
Several display options are available.
The program works under both DOS
3.3 and ProDOS.
"Auto-Display Hi-Res Picture Mak-
er" is an Apple II program which
will convert any norma] hi-res pic-
ture file on disk into a file which
can be BRUN. When you BRUN the
converted file, the picture isn't in-
stantly displayed on the screen; in-
stead, it is drawn onto the screen.
The picture can be drawn in a vari-
ety of ways.
To begin, boot up DOS 3.3 or
ProDOS, enter the program, and
save it to disk. It's important that
you save the program with the file-
name AUTO.HIRES.PIC, When you
run the program, it displays the
main menu. Option 1 (instructions)
outlines the steps needed to convert
a file from an ordinary hi-res pic-
ture to one which can be BRUN and
gives details of the memory loca-
tions used by the converted file.
Option 2 (load picture) loads a
hi-res picture file from disk into the
hi-res screen. When you choose this
option, you are prompted for a file-
name. If you change your mind and
decide not to load a file, press Ctrl-C
and Return to display the main
menu again. To view a catalog of
the disk, press Return without typ-
ing anything. When you are ready
to load a file, enter its filename and
press Return, Filenames must start
with a letter and be no longer than
15 characters for ProDOS or no
Joideep Vijan
longer than 30 characters for DOS
3.3. Once the picture has loaded,
you return to the main menu.
Option 3 (try draw routines)
lets you try out the various ways in
which the picture can be drawn on
the screen (there are five). When
you select this option, you are given
a choice of seeing one of the draw-
ing routines or of returning to the
main menu. To try out one of the
drawing routines, type in its number
and wait until it is POKEd into
memory. After the drawing routine
has finished, you return to the op-
tion 3 menu, Once you have decided
which routine you like best, return
to the main menu and go to option 4.
Option 4 (make auto-display
hi-res picture) is the part of the
program which converts the hi-res
picture into a file which can be
BRUN. When you choose this op-
tion, you are asked which drawing
routine you want to use. Enter the
number corresponding to the draw-
ing routine that you liked best in
the previous step. Then you are
asked for the name of the file you
wish to create (this will be the file
that can be BRUN). Again, press
Return by itself to view a disk cata-
log, or use Ctrl-C and Return to go
back to the main menu. After you
enter a filename, you are asked to
confirm that this choice is correct. If
you answer in the affirmative, the
conversion takes place, and you re-
turn to the main menu.
Option 5 (see screen) lets you
look at whatever is present on the
hi-res screen. After you finish look-
ing at the picture, press any key to
return to the main menu.
Option 6 lets you change the
disk drive or DOS prefix used by
the rest of the program. The slot
and drive apply if you are using
DOS 3,3, while the DOS prefix is
relevant only to ProDOS. If you are
using DOS 3.3, enter the slot and
drive numbers when prompted and
you will return to the main menu. If
you are using ProDOS, the program
displays the current prefix near the
top of the screen and invites you to
enter a new prefix. If you enter an
illegal prefix, or if ProDOS cannot
find the directory you want, you are
prompted to enter another prefix.
(Note that you must enter a valid
prefix in order to exit this option.)
Choose option 7 once you
have finished and want to leave the
program.
If a DOS error occurs, the pro-
gram prints an error message and
returns you to the main menu. If an
Applesoft error occurs, the program
stops after printing the error num-
ber and the line number in which it
happened. Pressing Ctrl-C and Re-
turn while the program is running
always returns you to the main
menu, except when you are enter-
ing a prefix for ProDOS.
Auto-Display Hi-Res Pictur©
Maker
For instructions on entering tliis program,
pleose refer to "COMPUTEI's Guide to Typing
in Programs" eisewtier© in this issue.
F9 1 REM COPYRIGHT 1987 COMPUTE!
PUBLICATIONS, INC. ALL RI
BHTS RESERVED
FE 5 IF PEEK (103) + PEEK (104)
t 2S6 < > 25345 THEN POKE 2
5344,0: POKS 103,1: POKE 10
4,99: PRItMT : PRINT CHR* (4
);"RUN AUTD. HIRES. PIC"
100 COHPUTEI Juiy 1987
S2 20 D« - CHR« (4)
56 30 SL* = ■■,S6,D1":SLX = 6:DR7.
=- 1:MN* " "SET SLOT AND D
RIVE (NOW i>,l>":CT% = "CAT
ALaG":NLX - 30: IF PEEK (4
8896) = 7t THEN CT» = "CAT
";NL7. = 15:MN» = "SET PREF
IX": PRINT D»; "PREFIX": IN
PUT PX»:SL« = "'■
82 Vie DNERR GOTO 63000
BB 997 REM
as 998 REM MAIN MENU
C( 999 REM
?B 1000 TEXT : HOME : HTAB 3: PR
INT "AUTO-DIBPLAY HI -RES
PICTURE MAKER"! HTAB 3:
PRINT "======™™™-
=======■«'»"«■""■"-'-": PR IN
T
El 1003 PRINT "COPYRIGHT 1987 CO
MPUTE! PUBLICATIDN3"! HT
AB 10: PRINT "ALL RIGHTS
RESERVED"
!i 1005 VTAB a
tC 1010 PRINT "<1> INSTRUCTIONS"
: PRINT "<2> LOAD PICTUR
E FROM DISK": PRINT "<3>
TRY DRAW ROUTINES"? PRI
NT "<4> MAKE AUTD-DISPLA
Y HI-RES PICTURE": PRINT
"<5> SEE SCREEN IN MEMO
RV"
K 1011 PRINT "<6> "-.MN*: PRINT
"<7> QUIT"! PRINT
B8 1015 PRINT "PLEASE CHOOSE ONE
(1-7) : ";: QET X»: PRI
NT X»! IF X« < "1" OR X»
> "7" THEN PRINT CHR» <
7) : eOTO 1000
El 1020 X = VAL IX*): ON X GOTO
2000 , 3000 , 4000 , S000 , 7000
,8000,6000
23 1997 REM
IB 1998 REM INSTRUCTIONS
33 1999 REM
72 2000 TEXT : HOME : PRINT "INS
TRUCTIONS"! PRINT "
": PRINT ! POKE 3
4,3
M 2010 PRINT "THIS PROBRAM WILL
TAKE ANY HI-RES"i PRINT
"PICTURE AND CONVERT IT
INTO A FILE WHICHWILL A
UTDMATICALLY DISPLAY THE
PICTURE"! PRINT "WHEN T
HE FILE IS BRUN. "! PRINT
il 2020 PRINT "WHEN THE FILE IS
BRUN, THE PICTURE WILL"!
PRINT "BE DRAWN ONTO TH
E SCREEN. THIS CAN BE"i
PRINT "DONE IN A NUMBER
OF WAYS. TO TRY OUT THED
IFFERENT DRAWING ROUTINE
S, LOAD A": PRINT "PICTU
RE US INS OPTION 2 FROM T
HE MAIN"
51 2021 PRINT "MENU AND BO TO OP
TION 3. "J PRINT ; QQSUB
10000
CC 2030 HOME : PRINT "ONCE YOU H
AVE CHOSEN THE DRAWING R
OUTINETHAT YOU LIKE BEST
, BO BACK TO THE MAIN ME
NU AND QD TO OPTION 4. f
BEFORE QDINB": PRINT "TO
OPTION 4, MAKE SURE YOU
HAVE LOADED YOUR PICTU
RE INTO MEMORY,)": PRINT
21 2040 PRINT "YOU WILL BE ASKED
FDR THE NUMBER OF THE D
RAWING ROUTINE THAT YOU
WANT TO USE FOR YOUR PICT
URE AND FDR THE NAME OF
A FILE TO SAVE IT TO. WH
EN THE PROGRAM HAS"
3C 2041 PRINT "FINISHED CREATING
THE FILE, YOU WILL BE R
ETURNED TO THE MAIN MENU
."! PRINT
fli 2050 PRINT "NOTE: WHEN THE CR
EATED FILE IS BRUN, IT W
ILL OVERWRITE MEMORY LOC
ATIONS $2000- »62FF (81
92-23343).": PRINT
8# 2060 GOSUB 10000: (3DT0 1000
2< 2997 REM
IJ 2998 REM LOAD PICTURE
M 2999 REM
83 3000 TEXT : HOME : PRINT "LOA
D PICTURE FROM DISK": PR
INT "
": PRINT : POKE 34,3
U 3010 PRINT "ENTER FILENAME (J
UST RETURN FDR CATALOS) "
: INPUT ":";FI»
CC 3020 IF FI* - "" THEN POKE 34
,0: PRINT D»;CT»;SL»: PR
INT : PRINT : BDSUB 1000
0: GOTO 3000
IB 3030 IF LEN (FI«) > NL7. OR AS
C ( LEFT* (FI», 1) ) < ASC
("A") DR ASC ( LEFT* (F
I«, 1) ) > ASC ("Z") THEN
PRINT CHR» (7): GOTO 300
0
80 3040 HGR : POKE 49234,0: PR IN
T D»;"BLDAD ";FI»;",A»20
00";SL«: FOR X » 1 TO 15
00: NEXT : QDTO 1000
25 3997 REM
iF 3990 REM TRY DRAW ROUTINES
35 3999 REM
27 4000 TEXT ! HOME : PRINT "TRY
DRAW ROUTINES": PRINT "
... PR I N
T
E9 4010 PRINT "PLEASE CHOOSE ONE
:": PRINT
4D 4020 FDR X - I TO 5: PRINT "<
"SXi"> DRAWING ROUTINE "
;Xs NEXT : PRINT "<6> RE
TURN TO MAIN MENU": PR IN
T
2E 4030 PRINT "WHICH (1-6) ? ";:
QET X»! PRINT X«: IF X«
< "1" OR X« > "6" THEN
PRINT CHR» <7)(: QOTO 40
00
D4 4040 X2 = VAL (X*): IF X2 = 6
THEN 1000
3B 4050 RESTORE : PRINT : PRINT
"SKIPPING DATA...."! PRI
NT I GOSUB 10010
D« 4060 IF X2 = 1 THEN PO = 2457
6: GOSUB 10030: GOTO 420
0
1! 4070 FOR XI •■ 1 TO X2 - 1: BO
SUB 100101 NEXT
DS 4080 PO « 24576: GOSUB 10030
!i 4081 IF X2 =• 5 THEN BOSUB 100
30 t GOTO 4200
»? 4090 FDR XI = 1 TO 5 - X2: GO
SUB 100101 NEXT i GOSUB
10030
31 4200 CALL 24376: FDR X = 1 TO
5000: NEXT t QOTO 4000
2i 4997 REM
CC 4998 REM MAKE PIC.
36 4999 REM
49 5000 RESTORE : TEXT : HOME :
PRINT "MAKE AUTO-DISPLAY
HI-RES PIC": PRINT " —
"I PRINT ! POKE 34,3
S7 5010 PRINT "USE WHICH DRAWING
ROUTINE (1-5J s "(1 BET
Xti PRINT X«i IF X« < "
1" OR X» > "3" THEN PRIN
T CHR» (7): HOME : GOTO
5010
2B 5020 DR = VAL (X«)
BD 5030 HDME : PRINT "ENTER NAME
OF FILE TO SAVE TO. "l P
RINT " (JUST RETURN FOR C
ATALDQ)": PRINT : INPUT
": ";FI»
B2 5040 IF FI» - "" THEN POKE 34
,0: PRINT D»;CT»;3L»! PR
INT : PRINT : GOSUB 1000
0! HDME ! PRINT "MAKE AU
TO-DISPLAY HI -RES PIC":
PRINT "
"1 PRINT I
POKE 34,3s GOTO 3030
2C 50S0 IF LEN (FI») > NLX OR AS
C ( LEFT* (FI«,1)) < ASC
("A") OR ASC ( LEFT* (F
I*, 1) ) > ASC ("Z") THEN
PRINT CHR* (7) : QOTO 503
0
it 5060 HOME : PRINT "FILENAME:"
SFI*! PRINT ! PRINT "DRA
MING ROUTINE "jDR: PRINT
: PRINT : PRINT "OK (Y/
N> ? ";: BET X»i PRINT X
»! IF X* - "N" THEN 3000
BS 5070 IF X* •= "Y" THEN 3090
15 50B0 PRINT CHR* (7) : GOTO 506
0
flE 5090 POKE 34,6: HDME : POKE 3
4,0: VTAB 10
EJ 5100 PRINT "CREATING FILE
"! PRINT
77 5110 XI = PEEK (8192) :X2 - PE
EK (8193) :X3 - PEEK <819
4)
Ai 5120 POKE 6192,76: POKE B193,
0! POKE B194,64
3B 5130 PO - 16384: GOSUB 10030
1i 5140 POKE 163B3,X1: POKE 1639
0,X2: POKE 16395, X3
*1 5150 PO = 16640
lie 5160 IF DR - 1 THEN GOSUB 100
30! QOTO 5300
9E 5170 FDR X5 = 1 TO DR - 1 : GO
SUB 10010! NEXT : GOSUB
10030
BE 5180 IF DR = 5 THEN GOSUB 100
30: GOTO 5300
26 5190 FOR X3 = 1 TO 5 - DR: GO
SUB 10010: NEXT : GOSUB
10030
61 5300 PRINT "SAVING FILE ":
PRINT : PRINT D*;"BSAVE
" ; F I « ; " , A«2000 , L*2400 " ;
SL*: PRINT : PRINT "DONE
. ": FOR X - 1 TO 2000: N
EXT ; POKE ai92,Xl! POKE
B193,X2: POKE B194,X3:
GOTO 1000
27 5997 REM
04 599B REM QUIT
37 5999 REM
E! 6000 TEXT : HOME : VTAB 12: H
TAB 14: PRINT " BYE
. .. . "i VTAB 23: END
2B 6997 REM
97 6998 REM SEE SCREEN
3B 6999 REM
77 7000 TEXT : HOME : PRINT "SEE
SCREEN IN MEMORY": PRIN
T " "
: PRINT
21 7010 PRINT "PRESS ANY KEY TO
SO BACK TO MENU ONCE": P
RINT "PICTURE COMES ON":
FOR X - 1 TO 2500! NEXT
EC 7020 POKE 49232,0: POKE 49234
,0: POKE 49236.0s POKE 4
9239,0: WAIT - 16384,128
: POKE - 1636B,0: GOTO 1
000
July 1987 COMPUTEI 101
21 79<?7 RE«
D7 7998 REM SLOT, DRIVE / PREFIX
39 7999 REM
28 8000 TEXT : HOME : PRINT MN«s
FOR X - 1 TO LEN <MN«) i
PRINT "-";: NEXT S PRIN
T : PRINT : IF CT« - "Cfl
T" THEN BH00
FF 8010 PRINT "SLOT (1-7) ? " ; :
GET X»
11 8020 IF X* < "1" OR X» > "7"
THEN PRINT CHR* (7)! HTA
B l! VTAB PEEK (37)! SOT
O 3010
SE 8030 SLX = VAL tX») S PRINT X»
: PRINT
2E 8040 PRINT "DRIVE <l-2) 7 ";:
SET X»
35 8050 IF X« < "l" OR X* > "2"
THEN PRINT CHR* (7) i VTA
B PEEK (37): HTAB 1: GOT
0 8040
3i 8060 DRX = VAL tX*)sMN* = "SE
T 3LOT AND DRIVE (NOW "
+ STR* (SLX) + "," + STR
* (DRX) + ")":3L» - ",3"
+ STR» (SLX) + ",D" +3
TR» (DRX): BOTO 1000
?F B500 PRINT "CURRENT PREFIX: "
;PX»: PRINT ; POKE 34, P
EEK (37) + 1: HOME
33 8510 INPUT "ENTER NEW PREFIX:
";X«
39 S5Z0 ONERR eOTO 8600
91 8530 PRINT D»; "PREFIX ";X»:PX
• •• X«: ONERR QOTO 63000
iS BS40 GOTO 1000
AS 8600 PRINT CHR* (7) S HOME J S
OTO 8510
IB 9995 REM
71 9996 REM SUBROUTINES
21 9997 REM
17 9993 REM WAIT FOR KEYPRESS
3B 9999 REM
it 10000 VTAB 23: PRINT "PRESS A
NY KEY TO CONTINUE "ji
BET X«: PRINT : RETURN
9? 10007 REM
03 10008 REM SKIP ONE DATA BLOCK
A9 10009 REM
37 10010 READ X: IF X = 300 THEN
RETURN
7« 10020 SOTO 10010
99 10027 REM
48 10028 REM POKE ONE DATA BLOCK
B9 10029 REM
S7 10030 READ X: IF X = 300 THEN
RETURN
3£ 10040 POKE PO,X:PO = PO + 1:
QOTO 10030
EB 59995 REH
«! 59996 REM DATA
«C 59997 REM
4B 59998 REM MOVER ROUTINE
!C 59999 REM
A7 60000 DATA 169,0,141,0,32,169
,0, 141,1,32,169,0, 141,2
,32, 160,0, 169,0, 133,60,
169,65, 133,61, 169,233, 1
33,62, 169
Bl 60010 DATA 67,133,63,169,0,13
3,66, 169,96, 133,67,32,4
4,254,76,0,96,300
9E 60027 REM
DF 60028 REM DRAWING ROUTINE 1
BE 60029 REM
E« 60030 DATA 32,216,243,173,82,
192, 162,0, 189, 102,96,20
1,235,240,40, 141,57,96,
189, 115,96,141,61,96, IB
9,127,96,141,65,96
F3 60040 DATA 189,139,96,141,69,
96, 189, 131,96, 141,75,96
,142, 163, 96, 32, 56, 96, 17
4, 163, 96, 232, 76, 8, 96, 96
, 169,32,133,61,169
Fj: 60050 DATA 40,133,63,169,64,1
33, 67, 169, 0, 133, 60, 133,
66, 169, 25S, 133, 62, 32, 82
,96,96,160,0,177,60,143
,66,32,180,252, 176
CI 60060 DATA 8,169,16,32,168,25
2, 76, 82, 96, 96, 32, 57, 37,
61,35,48,41,53,44,59,43
, 58, 235, 35, SB, 41 , 63, 37,
52,43,56
DF 60070 DATA 45,61,47,38,64,89,
69, 93, 67, 80, 73, BS, 76, 91
,77,90,0,0,128, 128,128,
0, 128, 0, 0, 0, B0, 12B, 127,
127, 127
71 600B0 DATA 253,127,255,255,25
5, 127,127,253,253,181,3
00
CE 600B7 REM
31 600BB REM DRAWING ROUTINE 2
IE 600B9 REM
«l 60090 DATA 32,216,243,173,82,
192,169,0,141,232,97, 16
9, 191, 141,233,97,169,96
, 141,234,97, 174,232,97,
1B9, 104,96, 133,60, 133
3B 60100 DATA 64,189,40,97,133,6
1,24,105,32,133,65,174,
233, 97, 1B9, 104, 96, 133, 6
2, 133, 66, 189, 40, 97, 133,
63,24,105,32, 133,67
53 60110 DATA 160,0,177,60,145,6
4, 177,62, 145,66,200,192
, 40, 240, 3, 76, 63, 96, 169,
192,32, 168,252,206,234,
97, 169,255,205,234,97
IE 60120 DATA 240,9,238,232,97,2
06, 233, 97, 76, 21 , 96, 96, 3
00
K 60127 REM
» 60128 REM DRAWINB ROUTINE 3
C2 60129 REM
3D 60130 DATA 32,216,243,173,82,
192, 169,96, 141,232,97, 1
69,95, 141,233,97,169,96
,141,234,97, 174,232,97,
189, 104,96, 133,60,133
7B 60140 DATA 64,189,40,97,133,6
1,24, 105,32, 133,65,174,
233, 97, 189, 104, 96, 133, 6
2, 133,66, 189,40,97,133,
63,24,105,32, 133,67
73 601H0 DATA 160,0,177,60,145,6
4, 177,62, 145,66,200. 192
,40,240,3,76,63,96, 169,
192, 32, 168, 252, 206, 234,
97, 169,255,205,234,97
4F 60160 DATA 240,9,206,232,97,2
38, 233, 97, 76, 21 , 96, 96, 3
00
C2 60167 REM
C4 60168 REM DRAWING ROUTINE 4
E2 60169 REM
92 60170 DATA 32,216,243,173,82,
192,169,0, 141,7,98,169,
191, 141,8,98,169,96,141
,9,98, 174,7,98, 189, 13S,
96, 133,60, 133
91 601B0 DATA 64,189,71,97,133,6
1,24, 105,32, 133,63,174,
8,98, 189, 135,96,133,62,
133,66, 189,71,97, 133,63
,24,105,32,133,67
EF 60190 DATA 160,0,177,60,73,25
5,145,64, 177,62,73,255,
145, 66, 200, 192, 40, 240, 3
, 76, 63, 96, 169, 192, 32, 16
8,252,206,9,98,169
4S 60200 DATA 255,205,9,98,240,9
,238,7,98,206,8,98,76,2
1,96, 169,32, 133,61, 169,
63, 133,63,169,64, 133,67
,169,0,133,60
BE 60210 DATA 133,66,169,255,133
,62, 160,0,32,44,234,96,
300
9E 60217 REM
Ei 6021B REM DRAWING ROUTINE 3
BE 60219 REM
2B 60220 DATA 32,216,243,173,82,
192, 169,0,141,77,98,169
,191,141,78,98,169,96,1
41,79,98,174,77,98, 189,
205,96,133,60, 133
18 60230 DATA 64,189,141,97,133,
61,24, 103,32, 133,65, 174
, 78, 98, 189, 205, 96, 133, 6
2, 133,66, 189, 141,97, 133
,63,24, 105,32, 133,67
3ft 60240 DATA 160,0,177,60,73,23
5, 1 45, 64, 177, 62, 73, 235,
145. 66. 200. 192. 40. 240. 3
, 76, 63, 96, 169, 96, 32, 168
,252,206,79,98,169
FD 60250 DATA 255,205,79,98,240,
9. 238. 77. 98. 206.78. 98. 7
6,21,96,169,96,141,77,9
8,169,95,141,78,98, 169,
96,141,79,98,174
3ft 60260 DATA 77,98,189,205,96,1
33, 60, 133, 64, 189, 141 , 97
,133,61,24,105,32,133,6
5, 174,7B,9Q,1B9,2«5,96,
133,62, 133,66, 189, 141
ft! 60270 DATA 97,133,63,24,105,3
2,133,67, 160,0, 177,60, 1
45, 64, 177, 62, 145, 66, 200
, 192, 40, 240, 3, 76, 164, 96
,169,96,32,168,252
E4 60280 DATA 206,79,98,169,235,
205, 79, 98, 240, 9, 206, 77,
9B, 238, 78, 98, 76, 122, 96,
96,300
D6 60287 REM
31 60288 REM COMMON DATA
Fl 60289 REM
99 60290 DATA 0,0,0,0,0,0,0,0,12
8, 128, 128, 128, 128, 128, 1
28, 128,0,0,0,0,0,0,0,0,
128, 128, 128, 12B, 128, 128
F5 60300 DATA 128,128,0,0,0,0,0,
0,0,0, 128, 128, 128, 128, 1
28,128,128,128,0,0,0,0,
0,0,0,0,128, 128,128, 128
, 128
B9 60310 DATA 128, 128, 12B, 40, 40,
40, 40, 40, 40, 40, 40, 168, 1
6B, 16B, 168, 16B, 16B, 168,
168,40,40,40,40,40,40,4
0,40,168, 168,168, 168
E2 60320 DATA 168,168,168,168,40
, 40, 40, 40, 40, 40, 40, 40, 1
68, 168, 168, 168, 168, 168,
168, 168, 40, 40, 40, 40, 40,
40,40,40, 168, 168, 168
93 60330 DATA 168, 16B, 16B, 16B, 16
8, 80, 80, 80, 80, 80, 80, 80,
80 , 20B , 208 , 208 , 208, 208 ,
208, 208, 208, 80, 80, 80, 80
,80,80,80,80,208,208
96 60340 DATA 200,208,208,208,20
8, 208, 80, 80, 80, 80, 80, 80
, 80, 80, 20B, 208, 20S, 208,
208. 208. 208. 208. 80. 80. 8
0, 80, 80, 80, 80, S0, 208
S4 60350 DATA 208,208,208,208,20
8. 208. 208. 32. 36. 40. 44. 4
8, 52, 56, 60, 32, 36, 40, 44,
48, 52, B6, 60, 33, 37, 41 , 45
,49,53,57,61
t7 60360 DATA 33,37,41,45,49,53,
37, 6 1 , 34, 38, 42, 46, 50, 54
, 5S, 62, 34, 38 , 42, 46, 50, 5
4, 58, 62, 35, 39, 43, 47, 51 ,
102 COMPUTEI July 1987
S5,39
27 60370 DATA 63, 35, 3"?, 43, 47, 31 ,
35, 59, 63, 32, 36, 40, 44 , 48
. ,52,56,60,32,36,40,44,4
B, 52, 56, 60, 33, 37, 41, 43,
49,53
17 60380 DATA 57,61,33,37,41,45,
49, 53, 57, 61, 34, 3B, 42, 46
, 30, 54, 38, 62, 34 , 38, 42, 4
6,50,34,38,62,33,39,43,
47,31
6» 60390 DATA 55,59,63,35,39,43,
47,51,55,59,63,32,36,40
, 44, 48, 52, 56 , 60, 32, 36, 4
0, 44, 48, B2, 56 , 60, 33, 37,
41,45
71 60400 DATA 49,53,57,61,33,37,
41 , 45, 49, 53, 57, 61 , 34, 38
, 42, 46, 50, 54, SB, 62, 34, 3
8, 42, 46, 50, S4, SB, 62, 35,
39,43
CJ 60410 DATA 47,51,35,39,63,35,
39, 43, 47, 51 , 55, 59, 63, 16
0, 137, 160,0,300
F£ 62997 REM
4E 6299S REM ERROR HANDLER
IF 62999 REM
M 63000 El ■= PEEK (222) :E2 = PE
EK (218> + PEEK (219) «
256
7D 63010 IF El « 255 THEN 1000
74 63020 IF El " 4 THEN ER« = "D
I3K WRITE PROTECTED" +
CHR» (13) + CHR« (13) +
"PLEASE REMOVE WRITE P
ROTECT STICKER": BOTO 6
3900
94 63030 IF El = 8 THEN ER« = "D
ISK I/O ERROR" + CHR« (
13) + CHR« (13) + "PLEA
3E TRY ANOTHER DISK": 0
OTD 63900
15 63040 IF El = 9 THEN ER« = "D
ISK FULL" + CHR* (13) +
CHR» (13) + "PLEASE TR
Y ANOTHER DISK": BDTO 6
3900
Ffl 63050 IF El = 10 THEN ER» = "
FILE LOCKED" + CHR« (13
) + CHR» (13) + "PLEASE
TRY ANOTHER FILE": GOT
Q 63900
6? 63060 IF El - 13 THEN ER» ■= "
FILE IS NOT A BINARY FI
LE" + CHR« (13) + CHR*
(13) + "PLEASE TRY ANOT
HER FILE": BOTO 63900
!7 63070 IF El = 6 DR (El - 7 AN
D PEEK (48896) - 76) TH
EN ER» - "FILE NOT FOUN
D" + CHR« (13) + CHR* (
13) + "PLEASE TRY ANDTH
ER FILE"! BOTO 63900
K 630B0 IF El -= 11 DR (El = 16
AND PEEK (4BB96) - 76)
THEN ER« - "DOS SYNTAX
ERROR" + CHR* (13) + CH
R» (13) + "PLEASE TRY A
BAIN": BOTO 63900
K 63499 TEXT : HOME : PRINT "ER
ROR NO. "{Els" AT LINE
NO. ";E2: END
EC 63900 TEXT : HOME : PRINT ER«
: BQSUe 10000: BOTO 100
Autoload:
A Streamlined
130XE
RAMdisk Loader
Mark Slogell
Here's a utility that no Atari 130XE
owner can afford to be without. Only
seven lines long, this tiny program
copies up to ten BASIC programs from
disk to the RAMdisk. Atari DOS 2.5 is
required.
When you boot up an Atari 130XE
using Atari DOS 2.5, a RAMdisk is
automatically established in the
computer's second 64K bank of
memory — an area that few pro-
grams use. This electronic "drive,"
designated D8:, can be used to save
and load programs in the same
manner as the more familiar me-
chanical drive. The advantage of
the RAMdisk is that data can be
loaded or saved much faster. The
disadvantage is that all information
in the RAMdisk is lost when the
computer is turned off.
One of the most common uses
for the RAMdisk is to hold frequent-
ly used programs for faster access.
"Autoload" simplifies the use of the
RAMdisk by automatically copying
as many as ten BASIC programs to
the ISOXE's RAMdisk when you
boot the computer. That task has
been accomplished before, but this
program does it with only seven
lines of code. You can watch the
program at work, and it also offers
an instructive and unusual demon-
stration of Atari's forced read mode.
In order to squeeze the pro-
gram into only eight lines, we'll be
pushing to the limit Atari's 120-
character restriction on the length
of a logical line. Before you start to
enter the program, type POKE 82,0
and press RETURN to get wider-
than-normal screen margins. Note,
too, that the listing includes several
abbreviations. The abbreviations
are present to save crucial space, so
type each line exactly as it's listed,
including the abbreviations.
Line 12 of Autoload contains a
list of the programs you want to
copy to the RAMdisk at boot time.
The names in the listing are merely
examples; replace them with file-
names of your own. Every name
must be exactly 12 characters long,
so add blank spaces as needed to
the end of any shorter filenames —
except for the very last name,
which doesn't require extra spaces.
Other than in line 12, you should
not type extra spaces anywhere in
the program.
When you are tinished typing
in Autoload, be sure to save a copy
July 1987 COMPUTE! 103
NEILJ.RUBENKING
PIANOMAN, NAMEGRAM
Author Rubenklng's goals are slfatghtforward:
to have fun with computers and gel paid tor it. So far
he is batting 1000. Along with his technical support
postlion he also edits a column in PC Magazine titled
•Turbo Power User'. His PIANOMAN and NAME-
GRAM programs evolved while he was leacfiing him-
self Turbo Pascal programming. Finding basic
computer tunes "oflensive" his PIANOMAN used his
musical background as a source to create music on a
PC (within the limits of its 2" speaker).
PIANOMAN allows you to;
Play your PC keyboard as if it were a piano , Save
and edit your tunes. Compile your tunes to a self-
running program & another option turns your tune
into a macro for Superkey,
NAMEGRAM is vrfild, wacky and is a must for
anagram (the ability to make a word or phrase from
another word or phrase) freaks. After experimenting
with algorithms, author Rubenkmg came up with a
program that would handle any size of input and any
size ol diclionary.
D 279 PIAHO HAN V3 M
□ 477 NAMEGHAM'BREAK OOWN.f ONE WORD SS
□ 5 , 730 PC-FILE I , an ejcellent database
manaoer lor latieis. inventory, and lorni letters S12
G 7B.627 PC-WRITE VERSION 2Ji A powerful
wordprocessor. Ihalis easy to use S12
G 199 PC-CALC Make a spreadsheet lo track expenses,
a budget or whatever J6
□ 212,334,621,622 RBBS VERSION 14.1a Set up a
bulletin board lor your local area J24
n 310 QMODEM COMMUNICATIONS — Send letters or
programs to your tfiends or business constituents £6
n 403 COMPUTER TUTOR — Learn to use your
compgler. great for new users 16
□ 405 DESKTEAM — A memory resident calculator,
calendar printer utility, phone dialer, and other desk
organizational tools S6
n 480 PC OUTLINE Program compsiabte to Tliihktank S6
D PC-SIG LIBRARY ON CO ROM 5295,00
n NEW 193? PC-SIG DIRECTORy -.., S 12,95
n 1 YEAR PC-SIG t/EMBERSHIP S 20 00
|S3b Foieign) ilnciudes directory. Dimonlhtf maginne are) more I
SPECIAL
Any 5 Disks plus
1-Year Membership
Only S39 (include J4 stiippmg f, handling)
Most pm^isms hwfs documentatiou on disk anil isQuesI a
ilonalm Irom sa^slisd users- Please add « Hostage and
handling per omer (SW loiagn) — C3titori\i3 msidenis add
stare sales tax. 37B
Total Enclosed S by D Check D VISA D MC
Card No , ^
Exp. date_
Name
Address _
Cily
_ Signature
_Staie_
-Zip-
To order, call: B00-Z45-6717
In CA: 800-222-2995
For technical questions or local
orders: (408) 730-9291
1030D East Duane Avenue Sunnyvale, CA 94DB6
before 3'ou run it. This is important
because the program erases itself
when it runs. Save the program with
the filename AUTOLOAD. You
shoultd save the program on a boot
disk — one that you use to start the
computer. If you use more than one
boot disk, you should save a copy of
Autoload on all boot disks for v^'hich
you wish to use the autoloading fea-
ture. To set up the RAMdisk, your
working boot disks must also have a
copy of the RAMDISK.COM file
from the DOS 2.5 master disk.
Now, remove your working
boot disk and place a copy of the
DOS master disk in the drive. Type
DOS and press RETURN to bring up
the DOS command menu; then use
option L to call up the SETUP.COM
utility from the DOS disk. Remove
the master disk from the drive and
replace it with the boot disk contain-
ing Autoload. Follow the prompts of
SETUP.COM to create an AUTO-
RUN. SYS file that points to the AU-
TOLOAD program. Finally, copy to
the same disk the programs you
wish to load into the RAMdisk
when the computer boots. At this
stage, the program is ready to use.
Whenever you start the computer
with this boot disk in the drive.
Autoload will automatically be exe-
cuted to transfer the specified pro-
grams into the RAMdisk.
How It Works
Autoload works in an interesting
way. The program itself actually
runs, in the technical sense, only for
a fraction of a second: It merely
writes some instructions to the
screen and erases itself. The instruc-
tions form a sequence of commands
which are, in effect, carried out in
direct mode, just as if an invisible
hand were pressing RETURN over
each line. Atari literature calls this
technique forced read mode; it is also
called the dynamic keyboard tech-
nique on other systems.
In a sense, this set of com-
mands on the screen is a miniature
program. Each command is per-
formed in order, just as in an ordi-
nary BASIC program. However, the
command lines don't begin with
line numbers. You also can branch
around in a program of this type —
not with GOTO, but with a POSI-
TION command which places the
cursor over the command you want
to execute next.
This series of instructions con-
tains LOAD commands, each of
which performs a NEW. But since
NEW doesn't erase the screen, our
set of instructions can be performed
in its entirety. Variables are erased
after each LOAD, however, so it is
necessary to redefine them after
each program loads. When all files
have been copied into the RAM-
disk, the screen clears and execu-
tion stops. If desired, you can
automatically run the last program
in the chain. Simply add the charac-
ters :RUN before the quotation
mark in line 4 and make sure that
the program you want to run is the
last one listed in line 12.
Autoload
For instructions on entering this program,
please refer to "COMPtJTEI's Guide to Typing
In Programs" elsewhere in this issue.
DC 2
KD 4
AA h
NO 1 REM COPYRIGHT 1 9B7 COMP
UBLICATIQNS, INC.
CES>ALL RIGHTS RE
I .
12, 0: BRflPHIC3 0
ON 0,2:7 "PaKEySI
♦0840J IFPEEK (S) -0
'OKE B42, 12t BR.0"
[QN 0,6!? "PaS-a,2
5448iF0R 1-40368 T
'ViPOKEI .PEEK (S) iP
PEEK<S) : J-J+1 : 7CH
n ; 1 NEXT I : PO3.0, 9
sea POSITION 0,ll!? "LOAD"|
CHR»C34);"Dli"!PDSITIDN
0,14!? "3Aye" ; CHR» (34)
I "D8: " : POSITION 0, 17
FD 10 ? "POSITION 0,0"!PD3IT
ION 0,21
Bit 12 7 "FLOORWflXC* SPACES>L
DNQNAME. EXTPR0S3.BAS
•C3 SPACES>MENU"
PK 14 POSITION 0,0iPOKE 842,
13 ffi
REM CO
UTE I P
t3 SPA
SERVED
POKE B
POSITI
, 1 I S-4
THEN P
POSITI
1 : J-40
0 4057
OKE J,
R» (254
COMPUTEI
TOLL FREE
Subscription
Order Line
1-800-247-5470
InIA 1-000-532-1272
Smooth-Scrolling
Billboard
For Commodore 64
This program hirns your Commodore
64 into an electronic billboard,
smoothl}/ scrolling large, multicolored
messages across the screen.
Would you like to be able to glide a
message across the Commodore
64's screen in giant, multicolored
letters? The program with this arti-
cle makes it easy. Or perhaps
you're a machine language pro-
grammer interested in smooth-
scrolling techniques. This article
explains how it's done.
Jumbo Billboard
To see smooth scrolling in action,
type in, save, and run the program.
The program takes a few seconds to
read the machine language in the
DATA statements and then asks if
you want multicolored letters. Re-
spond by pressing Y (yes) or N (no);
do not press RETURN. The upper
part of the screen fills with arrow
symbols, with the cursor positioned
over the first arrow symbol. Start-
ing at the cursor, type in the text
that you want to scroll across the
screen. Your text will replace the
arrow symbols as you type. Any
nongraphics characters can be used
(although lowercase letters will
scroll as uppercase). You can make
changes to your text by overtyping
the unwanted letters or by using
the DEL key.
Press RETURN when you have
Paul W. Corlson
entered the entire message. The
program reads all of the text up to
the first arrow symbol. If the pro-
gram doesn't find an arrow symbol,
it uses the first 250 characters (in-
cluding blanks) of the message.
After you press RETURN, the bill-
board immediately starts to scroll.
The message continues to scroll
with two spaces separating the end
of the text from the beginning. If
you want more separation, add ex-
tra spaces at the end of your text. To
stop the program, press any key
while the text is scrolling.
Changing Coiors
You can easily modify the program
to display colors of your own
choosing. The numbers in lines
70-90 can be changed to any legal
color number (0-15). When multi-
color letters are in use, the program
uses the color numbers in lines
160-230 instead of the foreground
color in line 80. The color numbers
in lines 160-230 can also be
changed to any legal color number.
This allows you to match the colors
to the content of your message. For
example, the letters in a patriotic
message might have alternating red
and white stripes against a blue
background.
If you simply want to use the
program, you needn't read any fur-
ther. The remainder of this article
discusses techniques which ma-
chine language programmers may
find interesting.
Text input
In order to work, this program must
pass a long string — the text of your
message — to a machine language
subroutine. You may wonder why a
simple INPUT statement isn't used
to enter the message. After all,
that's what INPUT is designed to
do. There are two reasons why it
isn't used. First, certain characters
that you might want to use in your
text, such as quotation marks, co-
lons, and commas, can cause prob-
lems with INPUT. Second, INPUT
can only handle strings up to 80
characters in length, but you might
want to display a longer message.
The same limitations apply to
the INPUT# statement. In fact, the
program takes advantage of the
way that INPUT* responds to a
colon as input. The INPUT* state-
ment in line 280 halts the program,
reads data from the keyboard buff-
er, and continues execution when
you press RETURN. Before we exe-
cute that INPUT*, however, the
program manipulates the keyboard
buffer to prevent INPUT* from
processing the text that you type.
Line 240 POKEs four values into
the keyboard buffer, where they
will be found by the INPUT* in
line 280. The four values are the
ASCII codes for a colon, left cursor,
arrow symbol, and left cursor. The
colon, because it is a delimiter,
causes INPUT* to disregard any-
thing that follows. This allows you
to type anything you want without
July 1987 COMPUm 105
causing an error message. When
INPUT* is executed, anything in
the keyboard buffer is displayed.
The left cursor, arrow symbol, and
left cursor are placed in the key-
board buffer to restore the screen
by overwriting the colon with an
arrow symbol and moving the cur-
sor back to the first screen location.
Smooth Scrolling
As you can see by looking carefully,
the large letters move horizontally
one pixel (screen dot) at a time,
making for very smooth move-
ment. The 64's VIC (Video Interface
Controller) chip can instantly posi-
tion the screen at any one of eight
pixel positions. This, combined
with the VIC's ability to instantly
change the location screen memo-
ry, allows you to scroll shapes one
pixel at a time. For machine lan-
guage programmers, here are the
steps this programs uses for smooth
scrolling:
1. Set aside two 1000-byte memory
areas for screen data. One of these
can be the normal screen memory
area, which starts at location 1024
($0400). Next, set up pointers in
zero-page memory to the two
screen memory locations. We'll re-
fer to these locations as SRCE and
DEST (for source and destination).
In this program, the two screen
memory locations are 1024 ($0400)
and 15360 ($3C00). It makes no
difference which location is initially
SRCE or DEST.
2. Clear both screens and fill color
memory at locations 55296-56295
($D800-$DFE7). The four high-
order bits of location 53272
($D018) control which screen is ac-
tive. Make DEST the active screen.
Set the screen size to 38 columns by
clearing bit three of location 53270
($D016). Set the scroll position to
seven by setting the three low-order
bits of 53270 ($D016).
3. Swap the pointers to SRCE and
DEST and copy columns 1-39 of
the SRCE screen to columns 0-38
of the DEST screen.
4. Fill column 39 of the DEST
screen with new data.
5. Using a time delay, decrement
53270 ($D016) until the three low-
order bits are zero. The time delay
is approximately equal to the exe-
cution time of steps 3 and 4 to
prevent jerking.
6. Wait until location 53266
($D012) equals zero (indicating ras-
ter line zero), and then make the
inactive screen the active screen
and immediately set the scroll posi-
tion to seven. Go to step 3.
Steps 3 and 4 are performed
only on screen rows 9-17 in this
program, since these are the only
rows that change. In many pro-
grams that use smooth scrolling,
the time delay between each decre-
ment of 53270 ($D016) in step 5
would be replaced with routines
that move sprites, check for colli-
sions, and so on. When this is the
case, a time delay loop will usually
be needed at the end of step 4 to
make the execution time of steps 3
and 4 equal the execution time be-
tween decrements of 53270 ($D016).
Smooth scrolling is not as diffi-
cult as you may think. The VIC chip
does much of your work for you.
This article has described only hori-
zontal smooth scrolling, but that's
the most difficult direction to scroll.
Vertical smooth scrolling is much
easier. If you've never tried smooth
scrolling, I hope that this article will
encourage you to do so. You can
find more information about scroll-
ing in Programming the 64 by Raeto
West, and Mapping the 6i ami 640
by Sheldon Leemon; both books are
available from COMPUTE! Books.
Smooth-Scrolling Billboard
For instructions on entering this program,
please refer to "COMPUTEl's Guide to Typing
in Programs" elsewhere in this issue.
REM COPYRIGHT 1987 COMPUT
Ei PUBLICATIONS, INC
(3 spaces! ALL RIGHTS RESE
RVED.
P0KE55 , 255 : POKE56 , 59 : CLR
:POKE53272, ( PEEK ( 53 272 ) A
ND15)OR16
PRINT" ECLRj"
PRINTTAB(12); "COPYRIGHT
(SPACE 1 1 987 " : PRINTTAB ( 6 )
;"C0MPUTE1 PUBLICATIONS,
INC.
PRINTTAB (10); "ALL RIGHTS
RESERVED."
FOR X=ITO1200iNEXT
PRINTCKRS ( 147 ) ; "READING
[space! MACHINE CODE...":
PRINT
T=0 s FORN=49152TO49640 i RE
ADK:POKEN,K:T=T+K:NEXT
IFT=72434THEN70
PRINT"***ERROR IN DATA S
TATEHENTS***" :END
RX 60 REM ** SCREEN COLORS **
XK 70 BG=0 :REM BACKGROUND
CR 80 FG=15:BEM FOREGROUND
JF 90 BR=0 :REM BORDER
PG 5
RS 10
RX 11
RS 12
JK 14
PF 15
KH 20
BR 30
FF 40
XA 50
KC
100
MP
110
BM
120
BK
130
DM
140
EP
150
MF
160
QJ
170
GF
180
HR
190
XJ
200
SR
210
SD
220
XS
230
EK
240
BF
250
EA
260
QC 270
BG
280
CD
290
XH
300
BH
310
ER
320
JG
330
DK
340
HC
350
RD
360
XQ
370
CG
380
SS
390
EM
400
QR
410
BS
420
KE
430
HB
440
KF
450
BQ
460
BG
470
JK
480
MP
490
JJ
500
RX
510
MA
520
CG
530
BA
540
CM
550
PRINT"MULTI-C0LOR LETTE
RS (Y/N)7 ";
GETAS : IFA$=""THEN110
PRINTA$:IF AS<>"Y"ANDA$
<>"N"THEN100
IF AS="N"THENPOKE49649,
0:GOTO240
POKE49649, 1
REM ** MULTI-COLOR LETT
ER COLORS **
P0KE4964a,4 :REM TOP
POKE49647,2 :REH 2ND
POKE49646,8 sREM 3RD
POKE49645,7 :REM 4TH
POKE49644,3 :REM 5TH
POKE49643,5 : REM 6TH
POKE49642,6 :REM 7TH
P0KE49641,14:REM 8TH
P0KEi98, 4 :POKE631 , 58 : PO
KE63 2 , 157 ! POKE633 , 95 : PO
KE634,157
PRINTCHR$(147) rFORNxlTO
12: PRINT :NEXT
PRINT" {2 SPACES lENTER T
EXT AT CURSOR - PRESS [
RETURN] (3 SPACES }WHEN F
INISHED.";CHRS(19);
FOBN=0TO250 : PRINTCHR? ( 9
5 ) ; : NEXT : PRINTCHR? (19);
OPEN1,0:INPUT#1,A$
POKE53280 ,BR: POKE53281 ,
BG:POKE49261,FG
SYS49152
POKE53 280,14:POKE53 281,
6 : PRINTCHR? (147 ) ;CHR$ ( 1
54);
PDKE55,0:POKE56, 160: CLR
:END
DATA 173,14,220,41,254,
141,14,220
DATA 165,1,41,251,133,1
,169,0
DATA 133,251,133,253,16
9,208,133,252
DATA 169,196,133,254,16
2,2,160,0
DATA 177,251,145,253,20
0,208,249,230
DATA 252,230,254,202,20
8,240,165,1
DATA 9,4,133,1,173,14,2
20,9
DATA 1,141,14,220,162,0
,160,0
DATA 189,0,4,201,31,240
,11,153
DATA 0,198,232,224,250,
240,3,200
DATA 208,238,169,32,153
,0,198,200
DATA 153,0,198,200,169,
0,153,0
DATA 198,173,241,193,20
8,24,133,253
DATA 169,216,133,254,16
9,14,162,4
DATA 160,0,145,253,200,
208,251,230
DATA 254,202,208,246,24
0,38,169,104
DATA 133,253,169,217,13
3,254,162,6
DATA 160,0,189,232,193,
145,253,200
DATA 192,40,208,246,16 5
,253,24,105
DATA 40,133,253,165,254
,105,0,133
DATA 254,202,208,228,16
9,4,133,252
DATA 169,60,133,254,169
,0,133,251
DATA 133,253,162,4,160,
106 COMPUTEI July 1987
0, 169,32
SH 560 DATA 145,251,145,253,20
0,208,249,230
SK 570 DATA 252,230,254,202,20
8,242, 173,22
HH 580 DATA 208,41,247,141,22,
208, 169,0
BH 590 DATA 141,250,193,17 2,25
0,193,238,250
CD 600 DATA 193,185,0,198,240,
242, 133,251
PR 610 DATA 169,0,133,252,6,25
1,38,252
EX 620 DATA 6,251,38,252,6,251
,38,252
DA 630 DATA 169,196,24,101,252
,133,252,160
PF 640 DATA 0,177,251,153,242,
193,200,192
DJ 650 DATA B , 208 , 246 , 32 , 228 , 2
55,201,0
HA 660 DATA 240,27,173,22,208,
9,8,141
SA 670 DATA 22,208,173,24,208,
41,15,9
KM 680 DATA 16,141,24,208,173,
22,208,41
FE 690 DATA 248,141,22,208,96,
169,61,133
HA 700 DATA 252,169,5,133,254,
169,0,141
DB 710 DATA 251,193,165,252,16
4,254,133,254
QQ 720 DATA 132,252,169,104,13
3,251, 133,253
FC 730 DATA 162,8,160,39,177,2
51,136,145
KG 740 DATA 253,192,0,208,247,
202,240,28
EG 750 DATA 165,251,24,105,40,
133,251,163
FH 760 DATA 252,105,0,133,252,
165,253,24
XX 770 DATA 105,40,133,253,165
,254,105,0
DH 780 DATA 133,254,208,214,19
8,254,169,143
MD 790 DATA 133,253,162,0,160,
0,30,242
XP 800 DATA 193,144,4,169,160,
208,2,169
RQ 810 DATA 32,145,253,232,165
,253,24,105
JR 820 DATA 40,133,253,165,254
,105,0,133
CK 830 DATA 254,224,8,208,225,
173,22,208
RP 840 DATA 9,7,141,22,208,162
,0,160
AB 850 DATA 6,202,208,253,136,
208,250,206
RB 860 DATA 22,208,173,22,208,
41,7,208
ED 870 DATA 236,198,252,198,25
4,173,24,208
HS 880 DATA 41,15,166,254,224,
61,208,4
PQ 890 DATA 9,240,208,2,9,16,1
62,0
EF 900 DATA 236,18,208,208,251
,141,24,208
KH 910 DATA 173,22,208,9,7,141
,22,208
DF 920 DATA 174,251,193,232,22
4,8,240,6
HH 930 DATA 142,251,193,76,50,
193,76,211
6H 940 DATA 192 rf*
Vanishing
Directory
Paul W. Carlson
This handy utility for the IBM PC/
PCjr and compatibles allows you to
display all the files in your current
directory without losing the infor-
mation displayed on the screen. It
works with both monochrome and
color displays.
The DIR command is used perhaps
more often than any other DOS
command. Quite often, however,
DIR causes valuable information to
scroll off the screen. It can help
somewhat to use the /W switch
with DIR, since that option lists
files in wide screen format, without
indicating the number of bytes or
date of a file. However, this format
usually overwrites some infor-
mation, too, and it can be harder to
read than the normal DIR display.
"Vanishing Directory" can dis-
play all the normal files (not hidden
or system files) on a floppy disk or
in the current directory of a hard
disk. What makes this program so
useful is that it literally vanishes
when it's no longer needed, leaving
the screen as it appeared before you
summoned the program, (You may
lose the top line of the screen if you
invoke the program when the cursor
is on the very bottom screen line.)
The program listed in this arti-
cle is a BASIC filemaker. Type in
the program and save a copy, then
run it. The program uses an internal
checksum to check for typing er-
rors. If no errors are found, it cre-
ates an executable machine
language file named VDIR.COM.
(Because the BASIC program cre-
ates a file named VDIR.COM, you
must not use that name for the BASIC
program itself.)
VDIR.COM is very easy to use.
At the DOS prompt, simply type
VDIR and press Enter. The program
clears the screen and displays a
directory similar to that shown by
DIR/W. Filenames are separated
with double vertical bars for easier
reading. If there are more than 100
files on the disk, the display pauses
after the first 100 files are listed,
waiting until you press a key. After
all the files are listed, you can press
any key to restore the previous
screen instantly.
The program always displays
the contents of the current disk and
does not allow an opportunity for
swapping disks. If you have two
floppy disk drives, put VDIR.COM
on your working copy of the system
disk. To display the contents of an-
other disk, place the disk contain-
ing VDIR, COM in the inactive drive
and place the disk you want to ex-
amine in the active drive. Then in-
voke VDIR.COM, preceding the
command with the inactive drive's
designation. For instance, if the
drive A: is the active drive, place
the disk containing VDIR.COM in
drive B: and enter the command
B:VDIR.COM.
If you have a single drive, put
VDIR.COM on any disk where you
July 1987 COMPUTEI 107
LET'S DO IT!
Ii"s fun, li's fascinating. It"s challenging.
It will take all you"ve got.
But we think you are up to it. You are britiht.
You are ulen. You are iniuginativc. And you
want to know who you are.
Meet your new^ mentor, MENTOR™
.software that lets you know how you're doing:
your mcniory capacity, your quickness and
coordination, your compelitive ability lo lake
tests, your perceptual keenness.
Do it. Just because you want to know.
Do it by yourself. MENTOR'" contains
SS mental exercises and tests, including
25 complete l,Q. tests with more than 950
questions.
Do it tor yourself. Build the prowess of
your mind with MENTOR'"
To orcfct yiKir eupy „r MENTOR '" . rk-j*' . jii 800-443-7380
(in Tn», all tiillKl 915-694-SD36., Viu.WjsurCjiJ jiicplcJ
IBMPCandciinifaliWo.l'i6K.gnphicstoanl*S49.95l(>wLigeincliki:iii
Hfuriilic Rtsanh. lof. • 51 12 A Wesi Crnhbin • Midland, Ton 79701
LEARN
[fil/iJi atl
MASTER COMPUTERS
IN VOUR OWN HOME
Now you un write progfams snd get a
eotnpuier to do iii3 wtiat ytsa w^l G«t itie
most Mil of aiiy computEf, and avtwd having
10 pay ihe t^igh price or (ire-pacKageil
sottware
LEARN AT YOUR OWN PACE
IN YOUR SPARE TIME
Our irttependem stuJv program allows jm
to learn atwut rasmpulps. oiieiations. af^i-
caliora and programming in »m spare lime.
at home Our insiruclMS provide you wiih
one-on-ffie cojoseting.
LEAHN EVEN BEFORE YOU DECIDE ON A COMPUTEH
Evaytling is explained in simple language. You will enjoy leamirg to
use a computer-EVEN IF YOU IMNT OWN ONE Lean) to program on
any personal computer; IBM, APPtf, (XMMOOORE, TRS, and more.
BE VOUR OWN COMPUTER EXPERT
Programming a the best way H 'f'™ '" "^e Mraputen. ind we can
show you he besl- and most ecoiMfflicil-wiy m leini jirngrammlDg!
Send today for your free informaHon package. No obligalion. No
salesman will call.
halix
INSTITUTE
CENTER FOR COMI^UTEREIXICATION I
,r*^.-H:-j i." J>^
HALIX INSTITUTE CENTER FOR COMFl/TtB EDUCAI ION UEI' I 61-7
1M3W OtVIVIPC =21'6LOSANGHES. i:A9001ii-3a94
YESi SeT<JiwnonTaloianho^lctBiteflinabou:c«iv»*ir^'i«tt">
grammplrjalhomfi'
-Age .
ct,
might want to use it. Fortunately,
VDIR.COM is a small program and
does not take up much disk space.
Hard disk users should put a
copy of VDIR.COM in the same
directory that contains other DOS
commands that load from disk
(such as FORMAT) or in any direc-
tory included in the DOS search
path. If you want a display of the
files in some other directory, use a
CHDIR or CD command to change
directories before invoking
VDIR,COM,
VDIR.COM Filemaker
For instructions on entering ttiis program,
please refer to "COMPUTEI's Guide to Typing
In Programs" elsevyhere in tfiis Issue.
1! 100
38 110
FE 120
FK 130
IK 140
a
145
HC
150
tn
l£i0
OD
170
FJ
1S0
SK
190
Ft
200
L.
EP 210
PC 220
K 230
KK 240
DJ 250
a 2fs0
F6 270
EC 280
KI 290
JN 300
DK 310
DH 320
FO 330
N9 340
LN 3S0
n 360
OC 370
VDIR.COn -filemaker
Copyright 19B7 COMPUTE!
Publication*, Inc.
' All rights rssurvBd.
CL3 1 PR I NT " COPYR I BHT 1 987 "
I PR I NT "COMPUTE! PUBLICflTI
DNS, INC. "SPRINT" ALL RISH
TS RESERVED. •■: FOR X=l TO
1500: NEXT X
CLOSE I OPEN "VDIR.COM" FDR
OUTPUT AS 1
PRINTttl , CHR* (S.HE9) j CHR« («c
H6E) )CHR«<«<H11);
FOR N-1 TO 4327!PRINT«1,C
HR<(<0)|iNEXT
T-0!FaR J-1 TO 579iReflD A
• iN-VAL("S<H"+A«)
T-T+N: PRINTWl , CHR« (N) | i NE
XTi CLOSE 1
IF T-53374i THEN PRINT"VD
IR.CQM succssmfully cr eat
Bd"iEND
KILL "VDIR.COM"! PRINT CHR
» (7) I "Typing mrror. Check
DATA statements"
DATA 00,00,00,00,2A,2E,2A
,00,43,75
DATA 72, 72, 65, 6E, 74, 20, 64
,69,72,65
DATA 63, 74, 6F, 72, 79, 20, 69
,73,20,20
DATA 3F,3A,5C,24,44,69,73
,6B,20,61
DATA 63,63,65,73,73,20,65
,72,72,6F
DATA 72,0A,0D,24,0A,0D,S0
,72,65,73
DATA 73, 20, 61, 6E, 79,20,68
,65,79,20
DATA 74,6F,20,63,6F,6E,74
,69,6E,75
DATA 65, 20, 6C, 69, 73, 74, 69
,6E,67,2E
DATA 2e,2E,24,0A,0A,0D,50
,72,65,73
DATA 73, 20, 61, 6E, 79, 20, 68
,65,79,20
DATA 74, 6F, 20, 72, 65, 73,74
,6F,72,65
DATA 20,74,68,65,20,73,63
,72,65,65
DATA 6E,2E,2E,2E,Z4,B4,0F
,CD, 10, A2
DATA A3, 10, 8a,3E,A6, 10,C7
,06,A7,10
DATA BA, 03, C7, 06, A4, 10, 00
,B0,A8,04
IP 380 DATA 75,0C,C7,06,A4, 10,00
,B8,C7,06
in 390 DATA A7, 10,DA,03,B4,03,8A
,3E,A6, 10
06 400 DATA CD, 10,B8,2E,AA, 10,aa
,0E,AB,10
CM 410 DATA 8a,36,A9,10,B9,A0,0F
, 1E,0E,07
H 420 DATA OB, 16, A7, 10,8D, 3E, 03
,01,A1,A4
01 430 DATA 10, 8E, 08, BE, 00, 00, EC
,AB,01,75
m 440 DATA FB,EC,Ae,01,74,FB,8A
,24,26,88
NO 450 DATA 25, 46, 47, E2,ED, IF, C6
,06, AC, 10
n 460 DATA 00, BB, 00,06,67,07,33
,C9,BA,4F
CS 470 DATA IB, CD, 10, BS, 00, 02, 33
,0B,33,D2
HF 480 DATA CD, 10, B8, 00, 00, A0, A3
,10,3C,07
a 490 DATA 74, 02, 60,02, CD, 10, C6
,06, AD, 10
LH 500 DATA 00, F6, 06, AC, 10, 01 , 73
,36,B4,19
01 510 DATA CD,21,04,41,SD,36,F2
, 11,83,06
KK 520 DATA 16,88,04,84,47,80,36
,AE, 11,62
HK 530 DATA 00, CD, 21 , 8D, 36, AE, 1 1
,SA,04,46
Bl 540 DATA 3C, 00, 75, F9, 4E, B0, 0A
,88,04,46
a 530 DATA 88,04,80,00,46,88,04
,46,B0,24
OL 560 DATA 88, 04, 84, 09, BO, 16, F2
, 11, CD, 21
DK 570 DATA BD, 16, AE, 1 1 , CD, 21 , F6
,06, AC, 10
Cfl 580 DATA 01,75,48,80, 16, AE, 10
,B4, 1A,CD
ES 590 DATA 21,C6,06, AC, 10,01 ,B4
,4E,8D, 16
PI 600 DATA EE, 11,B9,00,00,CD,21
,72,50,FE
IIH 610 DATA 06,AD, 10, B9, 11,00, SD
, 1E,AE, 10
m 620 DATA 83,C3, 1E,49,8A, 17,80
, FA, 00, 74
PF 630 DATA 07, B4, 02, CD, 21 , 43, EB
,F1,B4,02
6C 640 DATA 83, F9, 02, 75, 04, B2, BA
,EB,02,B2
HI 650 DATA 20, CD, 21 , E2, Fl , 80, 3E
,AD, 10,64
OH 660 DATA 75, 0F, SO, 16, 20, 12, B4
,09, CD, 21
EK 670 DATA B4, 07, CD, 21 , E9, 2B, FF
,BD, 16, EE
Hh 680 DATA 1 i , B4, 4F, CD, 21 , 72, 0A
,EB,B0,8D
OF 690 DATA 16, 0C, 12, B4, 09, CO, 21
,BD, 16,47
IH 700 DATA 12,84,09, CD, 21,84,07
,CD,21,B4
II 710 DATA 00,A0, A3, 10,CD, 10,B4
, 05, A0, A6
NO 720 DATA 10,CD,10,B9,A0,0F,8D I
,36,03,01
BH 730 DATA Al , A4, 10, BB, 16, A7, 10
, 1E,0E, IF
DH 740 DATA BE, C0, BF , 00, 00, EC, AB
,01,75,FB
m 750 DATA EC,A8,01,74,FB,aA,Z4
,26,88,25
£P 760 DATA 46, 47, E2, ED, IF, B4, 01
,8A,2E, AA
FK 770 DATA 10, BA, 0E, AB, 10, CD, 10
,B4,02,BA
JF 780 DATA 3E,A6, 10,aA,36,A9,10
,B0,FE,00
OH 790 DATA 74,02,FE,CE,B2,00,CD
,10,C3 I?
lOS COMPUTEl July 1987
Relative Files On The
1 57 1 Disk Drive
This article demonstrates reliable
methods for using relative files. A
Commodore 128 and 1571 disk drive
are recjuired.
What is a relative file? A file, as you
may know, is simply a collection of
information stored on disk. A rela-
tive file differs from other files in
that you can access any part of the
file instantly, without having to
read through other items of infor-
mation first. Relative files have
been considered a mystery by
many Commodore 64 owners, be-
cause they are cumbersome to ma-
nipulate in BASIC 2.0.
The introduction of the Com-
modore 128 and 1571 disk drive
changed this situation dramatically.
BASIC 7.0 contains several com-
mands for handling relative files,
and the Commodore 1571 Disk Drive
User's Guide contains an entire
chapter devoted to explaining them.
This is not a general tutorial on
using relative files on the 1571.
That information can be found in
Chapter 6 of the User's Guide. In-
stead, this article demonstrates sev-
eral factors that affect the reliability
of relative file handling on the 1541
Myron Achtman
and 1571 drives, including a bug in
the 1571 DOS (Disk Operating
System).
Beginning The Test
Before typing in the program, for-
mat a new, blank disk for use. It is
important that you use a new disk
for this demonstration because the
bug in 1571 DOS can corrupt all the
files on a disk.
Type in and save the program
on disk (but not on the new one
which you just formatted). Insert
the newly formatted disk in the
drive and run the program.
When questions appear on the
screen, answer them as follows.
(We'll begin conservatively.) First,
request that the 128 operate in
SLOW mode (enter S). Second, re-
quest that the disk drive operate as
a 1541 drive (enter 41). Third, indi-
cate that you want the program to
check the disk drive error channel
(enter ON). The error check also
includes a slight time delay, which
is explained below. Next, indicate
that you want to create a total of 15
records (enter 15). Finally, indicate
that you want to position the record
pointer to the last record in the file
(enter Y).
As the program runs, it dis-
plays the number of each record
that it writes. When it prompts you
to press a key, the program is ready
to read back the file that it just
created. Notice that each record
consists of five items, or fields; each
field is a different length. When all
records have been read, the pro-
gram displays the disk directory. As
you can see, the name of the newly
created file (R-S-41-ON-Y-15) is
descriptive, showing the options
you selected when creating the file.
The S in the filename stands for
SLOW, and so forth. You will not
need this file again, so you may
enter Y for yes when the program
asks whether to scratch this file.
FAST Mode
So far, everything worked perfect-
ly. The program created and read
back the file with complete accura-
cy. Now let's try some different op-
tions. Rerun the program and enter
F for FAST mode when prompted.
Select 1541 mode as before, but
enter OFF when prompted to
choose error checking. Choose 15
records as before, but do not posi-
tion the record pointer to the last
record in the file.
July 1987 COMPUTE! 109
Extended Hour» M-F 9a.ni>9p.m. CST PC COMPATIBLE Extended Houra SAT na.m>5p.ni. CST
COMMODORE PC-10-1
INCLUDES
COMMODORE PC10-2
INCLUDES
512K RAM
3eoK D/s onivE
CGA BOARD
PARALLEL & SERIAL I/O
QW BASIC AND MS DOS
SrDEKICK BY BORLAND
1 YEAR WARRANTY
CALL
64QK RAM
2-36aK D/S DRIVE
CGA BOARD
PARALLEL & SERIAL I/O
GW BASIC AND MS DOS
SIDEKICK BY BORLAND
1 YEAR WARRANTY
CALL
COMMODORE TTL GREEN
MONITOR S99.95
ZUCKERBOAROS fMadt In USA)
CLOCK CALENDAR 49 9S
256K EXPANSION BOARD 79 95
MONO GRAPHICS BD (HERCULES COMP.) SsisS
COLOR GRAPHICS BD (CGA) 99,95
PANASONIC
P*n«(jnic 10S0I Call
Pmnatonic 1001 i .,,... Cstl
Pinuonk: l»ai Call
PUnaaonlc 3131 ....,, , 2TB
Pinuonle3l51 4M
PvnBtonlc 1592 «1B
Panasonic 1$B5 53S
OKIDATA
OkldalaliQ 215
OUdatals: m
OkldatB 192+ . . ,^ 369
OUdaulMt iS9
Okl<lata3B2E ....449
OkldauiBJE S99
PRINTER EXTRAVAGANZA
EPSON
LX 86 . . . , ,
Fx»se
EX 900
E« IWO
.109
.369
.419
,.579
FX2B6E 509
LQSOO. 499
LQ 1000 699
LOISOO 999
STAR MICRONICS
NX-10 Call
NL-10 cm
MP-10 Call
NX-15 339
ND-li 44)
NR-15 S3t
Pt»«nY(» 199
NB 24/19 (24 Win) . . .Call
CANON
SEIKOSHA
C«NON A-SO
..579
sp-im ,9$
CANON A.55
..399
SP-IBOVC 169
CANON A4« ,
..349
SP-10OOVC 195
SP-IOOOA 199
SP-1200 209
liaNiiiuyujxiSfflniMiiit
COHTIMfHTAL UJA)
NX-10 PRINTER
t,
XETEC SUPER GRAPHIC
INTERFACE
$259
COMMQDOREg64/12a:SUPEH PRINTER PACKAGES
PANASONIC 10801 PRINTER
S
XETEC SUPER GRAPHIC
INTERFACE
S249
PANASONIC )091l PRINTER
ft
XETEC SUPER GRAPHIC
INTERFACE
$309
NX-10 PRINTER
ft
SUPRA 1150 INTERFACE
J 259
ATARil;XE;xllS:SUPER::f>RtNTEFr PACKAGES
BROTHER
flnOTHER 10OT 139
BnaTHEH1509 379
BROTHER 170« 499
BROTHER HR 35 749
BROTHER 2034 LQ . . . .819
TWINWRlTEfl 5 lit
SEIKOSHA SP1000VC PRINTER
WITH
BUILT-IN GRAPHICS INTERFACE
S165
MINIMUM ■■.00 SHIPPING
PANASONIC T080I PRINTER
ft
SUPRA 1150 INTERFACE
$249
PANASONIC I09JI PRINTER
ft
SUPRA 1150 INTERFACE
$309
■ ■■-■.-■.. JL!-iy.M.w.y
SUPER COMPUTERjj PACKAGES
PANASONIC I092I PRINTER
ft
SUPRA 11 SO INTERFACE
S379
ATARI 130XE COMPUTER
OkU. fOfI LATEST PRICE
COMMOOORE 128 COMPUTER
$239
1571 DISK DRIVE
$239
COMMODORE 64C COMPUTER
WrTH GEOS
$159
COMMODORE 128 PACKAGE
•COMMODORE 128 COMPUTER
•1571 DISK DRIVE
•1902 RGB MONITOR
$749
tUMITED TO FIRST 100 ORDERS)
COMMODORE 64C PACKAGE
■COMMODORE 94C COMPUTER
•1541C DISK DRIVE
•I602C MONITOR
•GEOS
PRICE TOO LOW TO ADYERTISEI!
ATARI 1040ST
SYSTEM PACKAGE
•INCLUDING ROB OR MONOCHROME
MONITOR. HOUSE, DOUBLE-SIDED DISK
DRIVE. BASIC. TDS OH ROM, AND BUILT-IN
POWER SUPPLY
• FULL MANUFACTUHER'S WARRANTY
APPLIES
CALL f on LATEST PRICE
ATARI 520ST SYSTEM PACKAGE
•INCLUDING RGB OR MONOCHROME MONITOR.
MOUSE. DISK
DRIVE. BASIC TOS OM ROM. AND RF MODULATOR
•FULL MANUFACTURER'S WARRANTY APPLIES
CALL FOR LATEST PRICE
AMIGA 2000 COMPUTER
SYSTEM
CALL FOR LATEST PRICE
OKIMATE 20 ft PLUG N PRINT
INTERFACES AVAILABLE FOR APPLfATAHl ST
AMiaA-IBM-C-94/128
$199
MlSCEt^JANEOaSHARDWARF
COMMODORE M/128
1541C DIak Drln
1670 Modam
1351 MauH
1750 Ram Expandar
11>02 RGB Monllor
Xatftc Super Graphic
Anux 1200 HC Madam
...Call
...lis
.44.BS
.. .IBS
. . . 27S
.IS.SS
...125
ATARI XE«XL*4OO*S00
1050 OIjK Drivo C*N
P.R. Connecllon S2.*ll
Animation Station - .ss.pR
Atari XM-301 32.9S
Supra 1150 Interlace Call
650 Interface , , Call
US Doublcr , , .49,05
Graphic At Interface , , . , 39.95
Avatex 1200 HC Modem , 125.00
ATARI 520ST*I04OST
SH 204 20 MEG Hard Drive Call
SF314 DS/DD DIak Drive Call
Supra 20 MEG Hani Drive SSt.OO
1040 Dual Cover Call
520 Duat Cover , Call
Z-Tlme 520' , ,39,95
Z-Tlme 1040 49,95
AvHtei 1200 HC Modem i2B.M
Compulereyea , 1 BS.OO
APPLE
e™ppl»r+ 74,9S
Gnppler^/WIEK 119.95
Serial Qrappler , 74 VH
Mach II Joyatick . 27 9S
Mach III Joyallck , 34.9fi
CALL FOR OTHER
APPLE HARDWARE
Extended Hours M-F 9a.m.-9p.m. CST COMMODORESMiSOFTWARE ■ I igxte^
BERKLEY
SOFTWORKS
GEOS 37.95
Writer's Workshop 32.95
Geodei 25.95
OeskPakI 22.95
FontPakI 19.95
tWopubllsh 34.95
(Motile 34.95
Geocalc 34.95
Geochart 27.95
DeskPak! 32.95
GeoCatile 32.95
ACCESS
Mach V-Cart 21,95
Leader Board .,,,. 24.95
TDurnament Disk . , 14,95
Executive Disk 14,95
WLD Class U> 25.95
Tenth Frame. .... .24.95
Famous Courses - .14.95
MICROPROSE
Se« Atari 13imetecVon
tortt^mtaiKt priest.
ACABUS 64
Charlpak 35.95
Ced.Pik 25.95
Powerplan 25,95
Super C Compiler 39,95
Super Pascal 39.95
Basic Compiler . . .25,95
Forth 25.95
Geoa JnsJde & Out 15.95
Personal Portfolio 25.95
Xper System 39-95
TIMEWORKS
Business Syle ma 32. 9S
Wordwrltsr/Spell . .32.95
Swltlcalc/Sldewaya 2S.9S
Data Manager II .. .25.95
Sylvia Porter 32.95
Evelyn Wood 25.98
Sideways 19.95
Partner S4 39.95
MISCELLANEOUS COMMODORE 64
Final Canrldge ...39.95 Superscript 54 .... 32.95
SPRINGBOARD
Newsroom ....... 30.95 Clip Art 1 Or 3
Bureacrscy 22.95
Ultima 2 32-95
Ptiantae 1,2 or 3 ..27-95
SItanohal 22.95
GhosUGotillna 19-95
Rebel Change 32-85
Superatr Hockey .. 22-95
Falcon 18-95
FT Boat 18.05
Carmen-LISA 29.95
Sentry 25.95
XE Alpha Mlalon . .19.95
Blue Powder Gry . .32.95
Ounship 22.95
Lealtier t^dilesaes 22.95
Hollywoot! Hlllnks 22.95
Fonfmaster 2 . . . . .29.95
Dltney Comic Strip 23.95
Dliney Card&Party 23.95
WWF Wresting.. ..2S.95
Thunder Chopper 19.95
UP Periscope 19.95
The Pawn 25.95
Slargllder 25.95
Subloolc FootlMll 27.95
Flight Simulator II 33.95
Suologic Basetxil 33.9S
Printmaater 21-95
Aft Gallery 1 Or 2 IB.9S
Sanxlon 15.95
Supertiasa 64 ....46.95
Hardtull 1B.95
Print Shop 28.95
P.S. Companion . . .22.95
Graph. Lib 1,2 or 3 1G.95
Wizard's Crown .. .27.95
Rosdwar2000 27.95
Warship 39.95
War^ame Constr. . .20.95
Shard Of Spring ..27.95
W»r In S. PbcUIc ..39.95
Rings 01 Zllllo 27.95
2 On 2 eaekelball 22.95
Champ Baseball ..19.95
GEL Football 22.95
llensfi^rnien .... .19.95
Gsmemaker 25.95
Accolade Comics ifi.ss
Phantasies 27.95
Pirates 25.95
Gatllecrulser 39.95
Expreaa Raider ...22.95
Realms/Darkness 27.85
S.D.1 22.95
Oehnder/Cniwn . . 22-9S
Copy II es 27-SS
Dark Tower 19.95
1942 19.95
Super Pak 2/64 .. .59.95
Legacy/Anclant* ..20,95
Certlllcate Maker , .30,95
Graphics Expantter 21.95
- ^ ^. 1»,96
CltpArt2 21.95
Cert. Maker Lib 1 . .21.95
ELECTRONIC AfTTS
Archon 10.95
Archonll 10.95
Earth Orbll Call
Fin. Cookbook 10.95
Heart 01 Africa . . .10.95
Mall Ord. Monsters 10.95
Mind Mirror 10.95
Movie Maker 1 0.95
Mule 10.95
Music Conalr. ....10.SS
One On One... . ..10.95
PInbail Conatr. . . ..10.95
RaclngDeatr 10.95
Seven Cities or Goldl 0.95
Skyfox 10.95
ELECTRONIC ARTS
Super Bould Dash 10.95
Touchdown FootballlO.95
Ullimste Wizard . ..10.95
Adv. Conatr. 25.95
America's Cup . . . .22.95
Arctic Fox 22.95
Auloduel 31.95
Baid'sTale 25.95
Bard's Tale II 25.95
Chlckamauga 23.95
Battlelront 25.95
Carriara At War .. .31.95
Europe Ablaia ... .31.95
Lorda 01 Conquest 22.95
Msit}le Mednesa . .20.95
ELECTRONIC ARTS
Moeblus 2S.95
Murder Party 22.95
Oflro 25.95
Pegaaua 23.95
Reach for the Stars 30.95
Road To Moscow . .25.95
Robot Rascals 25.95
Russia 2S.95
Scrabble 22,95
Cheaamaster 2000 25.95
Ulllma t 25.95
UlllmaS 31.95
Ulllma 4 36.95
World Tour Golf . . .23.95
-^ EST. 1982, /T/./.a
KLQmpu,t(ftbLLLtu^
PO. Box 17882. Milwaukee, Wl 53217
ORDER UNES OPEN
Mon -Fri 9 ajt\. - 9 pm CST • Sat- II a.m -5 pm.
To Order Call Toll Free
800-558-0003
l=or Technical Info, Order
Inquiries, or for Wise. Orders
414-357-8181
TELEX NUMBER 9102406440
(ANSERBACK • COMPUT MILW UQ)
EPYX
Destroyer 22.95
Fast Load 22.95
Movie Monster .
Champ Wrestling.
World Games . . . .
Winter Games . . .
Summer Gamea . .
Apahsl IHIogy . . .
22.95
22.95
.22.95
.22.95
.14.95
.14.95
Vorpal Utility 14.95
Multlplan 27.95
Super Cycle 14.95
St. Sports Basket 22.95
St. Sports Basebell 22.95
Summer Gemes 2 22.95
Sub Battle 22.95
COMMODORE
128 SOFTWARE
Supertxse 129 57.95
Superscript 12B . . .46.95
Woidwrlter 126 ...42.95
DataMsngar 128 . .42.95
Swl(tcalcl28 42.95
Sylvia Porter 128 , .42.95
Partner 128 42.95
Fleet System 4 . . . .46.95
Perfect Writer 49.95
Pocket Writer 2 . . .36.95
Pocket Filer 2 36.95
Pocket Plani^er 2 . .36.95
Superpak 2/128 - . .59.95
Basic Comp. 128 . .39.95
Cad Pak 12B 39.95
Super C Compiler 39.95
Cotaol12B 39.95
Super Paacal 12B. .39.95
Speed Term 12B.. .25.95
Chart Pak 128 25.95
Fontmaster 12B . . .36.95
Multlplan 12B 27.95
VIzawrlle 12B 54.95
Vlzastarl2e 54.95
Merlin 128 .69.95
Papemllp 11/126 Call
Extended Hours M-F 9a,m.'9p.m. CST
IBM SOFTWARE
ACTIVrSION
Alter Ego 31.95
Bornswed Time . . 25.95
Hickif 11.95
TauTlmei 22.95
Slwnahal 22.95
Porter 29.95
QFLFootbtll 25.95
2/2 Baekelbell 25.95
Champ B>»b>ll .25.95
Ghoalbueler» 11.95
Writer's Choice ...25.95
Planner's Choice . .25.95
Filer's Choice 25.9S
Choice Collection 64.95
Term Paper Wter , .32,95
StERRA
King's
Queitl.llor 111,
31 .9S
52.95
Space Quest ... ..31.95
Black Cauldron . ,.25.95
Helicopter SImu! ..35.95
Police Quest Call
Smart Money
- st
BRODERBUND
Prim Shop 37.95
Karateka 21.95
Graphic Ub 1 or 2 21.95
P.S Companion , , ,31.95
Toy Shop 42.95
TVpe 31,95
Viirlable Feast 39,95
Fin Independenca 94,95
For Comment . , . , 1 24 ,95
Carmen-USA 29,95
Carmen-WotW 25,95
SPRINGBOARD
Certlttcale Maker ..JS.95
Newsroom PrtJ - - - .82.35
SEE APPLE S ECTION FOR
RESTOFireus « prices
EPYX
SEE APPLE SEUTION FOR
ITEMS I, PRICES
ELECTRONrC ARTS
Exlended Hours SAT 1la,m.-5p.m.
MrSCELLANEOUS IBM
Archon 10.95
Fin Cookbook .... 10.95
Music Construct . . 10.95
One on One 10.95
PInball Constr. 10.95
7 Cities or Gold . . .10.95
Super Bldenlash . . 10.95
Mind Mirror 10.95
AmneslB 29.95
Cr, Slam Bridge . . .39.95
Murder Party 25.95
Ogra 25.95
Radio Sasebalt ...25.95
Adv Construct Set 25.95
MINOSCAPE
Bopreviastle 19.95
Indoor Sports . . . .19.95
Intlltrator 19.95
Balance/Powar ...31,95
Sub Mission 25,95
Amer Challenge ,,25,95
Racter 25.05
Mastertypa 25.95
Crosawoid Magic , ,31,95
Perfect Score 43,95
Scrabble 25,95
Stanieeti 34.95
Cbeaamaster 25.95
Ultima 111 38.95
Ultima IV 39.95
WrldTrGoir(NoAp)32,g5
Slarlllflht INoAp) .32,95
M. Beacon Typing 25.95
Arctic Foi Call
Startieet2 34.95
Ultima 1 26.95
Lords/Conqueal . . 23.95
Marble Madneas. . 25.95
Advance Fllglil Sim2S.95
TIME WORKS
Woidwriter 39.95
Swinolc 39.95
Data Manager ....39.95
Sylvia Porter 64.95
Svrinii 44.95
Partner 39.95
PCPovrerpack 77.95
INFOCOM
Ballyhoo 25.95
MItcfilker 19.95
i-eather Goddess . . 25.95
Trinity 25.95
Hollywood Hlllni . .25.95
Moonmist 25.95
Zork Trilogy 44,95
Bureaucracy 25.95
ACCOLADE
Hardball 24.95
Maan 18 31.95
PSI Trading Co. . ..24.95
Course Disk 1 6.55
Ace Ot Aces 24.95
SSI
Rings ot Ziltln .
..25.95
» .. .39.95
Spring 25.95
Roadwsr20u0 2S.95
Phentasie 25.95
Pres Elect 'BB 17.95
Kamptgruppe
Shand/Sf
SDI 2S.9S
Oetender/Crown . .25.95
Allernate Reality . .31.95
Flight Sim. II 39.95
Strip Poker 25.95
Orbller 31.95
Pawn 29.95
Starglldar 29.95
7lh Spirits 29.95
Champion Golf . . .25.95
Airplane Constr . . . 25.95
Conflict/Vietnam . .25,95
Decision/Desert ,,25.05
F-15 Strike Eagle . .21.05
Silent Service 21.95
Crusade/Europ* ..25.95
Gunahip 22.95
1 MIn [Manager 64. 9S
UNISON WORLD
Prlnlmaatar 36.95
Art Gallery 1 24.95
Art Gallery 2 18.95
Newamaaler. .... .62.95
Universe II
Wizardry
Up Perlacope ....
Thunder Chopper
Jet
Sublog Baseball .
Sublog Football . .
Falcon
Business Card Mkr.
Bumper Stick Mkr.,
Button Maker . . .
Millionaire 2
Generic Cedd 2.0
Isgur Portfolio . . . 1
Silk
Managing/Money 1
PT Boat
BL Powder Gray
Typesetter PC .
Megalont PC . .
Mercenary ....
Tenth Frame. . .
Commando . . .
Tag Team Wrest
47.95
39.95
19.05
10.05
34.05
34 05
34.05
31.95
36.95
31.95
31.95
36.95
59.95
49.95
Call
19.95
31.95
32.95
48,95
24.95
24.95
25,95
25.95
25,95
Extencletf Hours M-F 9a,m.-9p.m, CST
APPLE SOFTWARE
Extended Hours SAT 11a.m;-5p.m^
EPYX
Sports Baaketbali
Sports Baaebatt , ,
Worid Karat*
World Gamea , . . .
Deatroyer .,..-.,
Movie Monster , .
Winter Games - . .
Summer Games II
Apshal Trilogy . . .
Sub Battle
Epyx Joystick . . .
25.05
.25.05
.19.95
. 25.95
.25.95
14.95
.25.95
25.95
.25.95
.25.95
.25.95
DATASOFT
Black Magic 16.95
Old Scores , . 20.95
Tobruk 23.95
Swords/Sortary . . .20.95
BIsmanik 23.95
ELECTRONIC ARTS
Age/Adventure . . . .10.95
Archon II 10.95
Movie Maker 10.95
Skytoi 10.95
Adv. Constr. 32,95
Artie Fox 25.95
Autoduel 32.95
Bard's Tale 29.95
Bard's Tale II 32.95
Lord/Conquest ...25.95
Marble Madness ..23.95
MoeWus 36.05
Pegasus 25.05
Russia 26.95
Ultima I 26.95
see IBM SECTION FOR
REST
OF ITEMS AND PRICES
BROOERBUNO
Alfhaart 22.95
Animate 44.95
Print Shop 31.95
On Balance 64.95
Toy Shop 32.95
TVpa 2a.9S
Science Tool Kit . .44.99
Graph Lib 1,2 or 3 16.95
Bank ST Series Call
Carman-World 25.95
Carmen-USA 29.95
DATA EAST
Karate Champ .... 15.95
Kung Fu Master . . . 15.95
Commando 22.95
Tag Team Wrest . . .22.95
INFOCOM
SEE IBM SECTION FOR
ITEMS AND PRICES
MINDSCAPE
SEE JB*f SECTION FOR
ITEMS AND PRICES
SPRINGBOARD
Certificate Maker . .31.95
Clip Art 1 Of 3 19.95
CilpArt2 25.95
Certificate Ub1... 22.95
Gamea/Chiidren ..22.95
Graphics Expander 25.95
Newsroom 37.95
Piece of Cake Math 22.95
APPLE MISCELLANEOUS
Gettysburg 39.95
Warship 39.95
Pbsntasie 25.95
Ballle/Antietnam -.31.95
Phentasie 11 25.95
Battlecruiser 39.95
Realms/Darknesa 25.95
Pres Elect 'BS ...
Wrd CI Leader Bd
Wizard Crown 2 .
17.95
25.95
25.95
ACTIVfSION
Gamemaker . - , . . ,31,95
Hacker 11 25,95
Ijibyrtnlh 1 9.95
Little Computer ... 1 1 .95
Greeting Cam ,. ..25.95
SEEIBMSECTION FOR REST
OF ITEUS Ana PRICES
Fight Night 21.95
Hardbair 21.95
PSIThidlng 21.95
Comics 24.95
TlieHobbit 23.95
Up Periscope 19.95
Thunder Chopper 19.95
Ait. Reality 20.95
Math Blaster 31.95
Spell It 31.95
Cnamp Wrestling .. 25.95
Wizard's Crtiwn . . .25,95
Gemstone Healer 19.95
Word Attack 31.95
Elite 23.95
Pawn 29.95
Slatglider 29.95
Gunship 25.95
F-15 Strike Eagle ,.22.95
Silent Service , . ,22,95
Smart Money
Sublog, Baseball , ,
Sublog Football , , ,
Jet
Space Quest
Animat. Station . . .
Printmastar + . . . .
Art Gallery 1 or 2 . .
Publisher
War In S. Pacific . .
Star Trek II
Roadwar 20Q0 . . . .
Phaniasie 3
Business Card Mkr.
Bumper Stick Mkr.
Butlon Maker
Rebel Charge
Might K' Magic ...
Oper Copernicus. ,
internal Hockey , , ,
49,95
34,95
34,95
27,95
31.05
67.95
24.05
18.05
89.05
39.05
25.95
2S.95
25.95
36.95
31.95
31.95
31.95
35,95
25.95
17.95
ABACUS
Textpro 32.95
Datifeve 32.95
Tut Designer .... 32.95
Auampro 39.95
Powerplsn 49.95
Palntpro 32.95
Abacus Books Call
ST GRAPHICS
Degas Elite 52.93
Easy Draw 48.95
Cad3-D 36.95
Graphic Artist ...134.95
PalntworKs 25.95
IstCadd 31.95
Aegis Animator ,. .4B.95
Neochrome 34.95
Computeneyes . . . 189.00
StefDoCadSO ... .67.95
IT
TELECOMMUNICATION
SITkll(V*r2.D ... .16.95
BB/ST 31.95
Hash 27.95
LSTillk 33.05
Extended Hours M-F aa.m.-flp.m. CST ATARI ST SOFTWARE: i ; ; Extended Hour^ SAT 11a.m;-5p.m
ST EDUCATIONAL
Decimal Dungeon 24,95
Fraction Action ...24.95
Kinderama 24.95
Read & Rhyme . . . .24.95
Animal Kingdom . .24.95
Speller Bee 31.95
Kid Talk 31.05
Math Talk 31.05
First Shapes .... ,31.05
Winnie The Pooh,. 16.05
Donald Duck 16.9S
Buzzword. ...... ,20.05
ST DATABASES
DBMan 96.96
Regent Base 1.1 ..76-96
Data Manager St ..48.95
Zoomracksii 96.95
Stjperbase Gem. . .94.95
ST WORD-
PROCESSORS
Regent Word 11 . . .46.95
WordwriterSl 46.95
Thunder 26.95
Microsofl Write Call
Word Perfect ..,-.., Call
MICHTRON
Cornerman 31 .93
Echo 24.95
M-Dlsk 24.95
Malor Motion 24,95
MIchtrnnUliiltles, ,37,95
Cards 24,95
Time Bandits 24.95
Pens. Money Mgr., ,31.95
PInball Factory . ..24.95
Eight Bail 18.95
Back^Jp 24.95
Match-PoInt 24.95
Karate Kid 11 24.95
GFA Basic 46.05
Trlmtaase 62.95
Space Shuttle 2 . . .24.95
KfCache 24.95
GFA Draft 62.95
Trivia Challenge. . ,24.93
JournToLaIr 32.95
GFA Compiler 48.95
tSoidrunner 24.95
INFOCOM ST
SEE IBM SECTION
FOR ITEMS i PRICES
ST BUSINESS
VIP Professional Call
SwittcaicSI 48.95
Isgur Portfolio .. .124.95
|5aC Payroll 32.95
DAC Easy Accting 44.95
Dollars And Sense 64.95
Sylvia Porter 48.95
A-Calc Prime 39.95
LogistixJr. 64.95
ST UTILITIES
Music Sludio 32,95
Time Link 33.95
Micro Cookbook ..32.95
CZDroid 69.95
EZ Track 39.95
Write 90 16.95
Desk Cart 72.95
Lib 1/Cert Maker . .21.95
Labelmast Elite .. .27.95
DESKTOP
PUBLISHING
Drawrite 99.95
Publish. Partner . .99.95
Certificate Maker .. 3 1 .95
ST ADVENTURES
Sundog 24.95
Universe 11 44.95
The Pawn 29.95
Starglider 29.95
Dungeonmaster . .24.95
Ail. Reality 25.95
Tass Times . , . . . , ,25.95
Menienary 25.95
Autoduel 32.95
Ogra... 25.95
DelenderfCnswn ..32.95
S.D.i 32.95
Balance Of Power 32.95
UnimalilOrlV 36.95
Portal 32.95
Kinga Quest
1,2 ot 3 32.95
Space Quest .... .32,95
TiScker 29,95
Colonial Conquest 25.95
RoadwarZOOO . ...25.95
Wizard's Crown ...25.95
Rings 01 Ziltln . ...25.95
PhsntasieS .25.95
Bard's Tale ,,..... .Call
Phantse1,2 0f 3 , .25,95
ST LANGUAGES
Personal Pascal , , .49,95
Mafk Williams c. 114.95
Lattice C. ..,,., ,144,95
Cambridge Lisp, 139-95
LDWBaalc 44.95
Fortran 77 124.95
ST PRINT
UTILITIES
Rubber Stamp . . . .24.95
Prinim aster Plus ..24.95
Megaton! SI 24.95
Art Gallery 1 Or 2 IB.9S
Typesetter Elite .. .31.95
PHInlerface 18.95
ST ARCADE GAMES
Winler Games 24.95
Rouge 24.05
Super Kuey 25.05
Mean 18 25.05
Famous Course .,, 14,05
Leader Board 25,95
Silent Service , , , ,25.95
Flight Simulator 11 33,95
Champ Wrastiing ,. 24.95
World Games 24.95
Chessmasler 20QO 32.95
Tenth Frame 24. 9S
Shanghai 25.95
MIcroBasebail 39.95
WWF Wrestling .. .39.95
Skytox 29.95
Super Cycle 14.95
Indoor Sporu
.32-95
F-15 Strilte Eagle .27.95
High Roller Sim . . .32,95
Two/Tvra B8sketbail2S.95
Deep Space 29.95
Arena 22.95
Champ Baseball .,25.95
GFL Football 25.95
Harrier Strike 31.95
Sub Battle Sim . . .24.95
Arctic Fox 26.95
RPV 24.95
Crystal Caalles ., .20.95
Gridiron 42.95
Hardball 24.95
Palon Cheaa 36.95
Crystal Castles . . .20.95
Extended Hoijrs M-F 9a.m.-9p:in; ATARI XE/XL/400/8QO SOFTWARE; Extefidsd Hours SAT 1la.nri^-5p;m.:
BRODERBUNO
Karsleka 19,95
Print Shop 28.95
Bank Strael Writer 32,95
Graph, Lib. 1,2 or 3 16.95
P.S. Companion . , .22.95
MICROPROSE
Silent Service . .. .22.95
F-15 Strike Eagle ..22.95
Decision In Desert 25.95
Ken. Approach ...16.95
Crusade/Europe ..25.95
Conrilcl/Vielnam . .25.95
Top Gunner 16.95
INFOCOM
HllchlkBf 17,95
Wishbrlnger 11.95
Ballyhoo 25.95
Moonmist 22.95
Leather Goddess , . 22.95
Hollywood Hllini ..22.95
Zork Trilogy 39.95
XLENT SOFTWARE
Megalont 11 16.05
Page Designer .... 18.05
Megatller 18.95
PS Interface 18.95
Rubber Stamp .... 18.95
Typesetter 21.95
Picture Disk 14.95
ELECTRONIC ARTS
Age Of Adventure 10.95
Archon 10.95
Archon 11 10.95
Fin. Cookbook 10.95
Mali Ord. Monstera 10.95
Movie Maker 10.95
Music Constr 10.95
One On One 10.95
PInball Conslr. . . . .10.05
Racing Destr. 10.05
7 Cities Of Gold . . .10.05
Super Bouid. Dsah
Touch, Football , , ,
Chesamaster 20Q0
Chlckaumauga , , ,
Lorda/Conqueat. , ,
Ogre
Rommeirroburk . , ,
Starfieel I
Ultima I
Ultima 111
Ultima IV
10,95
10,95
25.95
23.95
22.95
25.95
26.95
33.95
27.95
31.95
38.95
Right Simulator ..33.05
Univerae 57,05
Strip Poker 21.05
Mien? League
Baseball 25.05
Hanc/BraceSal , , .59.95
General Mgr. MLB 25.95
Fight Nighl 18.95
Hardbair 16.95
Triple Pak 14.95
Leader Boanl 24.95
Tourn. Disk/LS . ..14.05
Animal Station ... 59.95
MISCELLANEOUS XE / XL / 4O0 I 800
Mercenary .18.95
Wizard's Cmwn ...27.95
Gettsburg 39.95
Warship 39.95
Synflie 32.95
Syncaic 32.95
Music Sludio 22.95
Alt. Reality 25.95
Executive Disk/LB 14.95
Tenth Frame 27.95
Infiltrator 19.95
Bop 'N' Wrettle . ..19.95
Super Htiey 16.95
Home Planetarium 27.95
Alariwriter Plus , . .30.05
MLB Boiscore/Stat 16.95
Home Accountant 30.95
ApshalTHIogy 16.95
Summer Games .,,16.95
World Karate
Championship . . , , 10.95
A/R Dungeon 20.95
Rebel Charge 32.95
Ace 0) Aces 19.95
Battlecruiser 39.95
Extended HoursM-F 9a.m.-9p.rn. CST
T^MIGA SOFTWARE
Extended Hours SAT 1"Ia.m.-5p.m.
AMIGA SOFTWARE
AC Basic 169.95
Aegis Olga 47.95
Aegis Draw 159.95
Aegis Animator . . .64.95
Alien Fires 24.95
AitReslily 24,95
CBM Texloraft 69,95
CBM Pascal . . , . , ,69.95
CBM Amiga C ,,, ,00,95
CBM Assembler ,,, 69,95
CBM Lisp 134.95
Amiga Enhancer . .11.95
Amigalerm 34.95
Analyze 2.0 94.95
Archon 26.95
Archon 11 26.95
Artie Fox 26.95
Gallery 1 or 2 18.95
AMIGA SOFTWARE
Autoduel 32.95
Aztec C Develop 179.95
Aztec C Commer 299.95
Balance/Power ...32.95
Bard ^ Tale 32,95
Best Accnting , , ,299,95
BIk Cauldron 26,95
Bumpr Stick Mkr ,.36,95
Bureaucracy 25.95
Business Ctd Mkr 36.95
Button Maker 36.95
Cambridge Lisp . .129.95
2/2 Basketball ,, ,,29,95
Champion Oolf , , ,25,95
Champ Baseball , ,29,95
Chesamaster 29,95
D8 Man 69,95
Decimal Dungeon 31,95
AIMIGA SOFTWARE
Deep Space 29,95
Defendef/Cfown .. 33.95
DejaVu 32.95
Deluxe Paint 11 84,95
Deluxe Print 64.95
Dei Print Dat 1 20.95
Del Paint Dat i 20.95
Dex Paint Dat 2 .. .20.95
Deluxe Video 2.0 . .84.95
Deluxe Music 2.0. .64.95
Dlgipalnt 44.95
DIgiview 149.95
DJscovry Spell ... .24.95
Dscovry Trivia .... 24.95
Oscovry Math .... 24.95
Earl Weaver 32.95
Firat Shapea 31 .95
Flight Siin 2 34.95
AIMIGA SOFTWARE
Flip Side 31,95
Flow 64,95
Fortran 77 169,95
Fraction Action ,, ,31,95
Gaileo 64,95
Galo 31,95
OFL Football 29,95
Goidapeii 27.95
Grnd Sim Tennis , ,31,95
Graphlcraft 34,95
Gridiron 44,95
impact 54,95
instant Music 32,95
Jet 34,95
Kamogruppe 39,95
Kid'tafk . 31,95
Kinderama 31,95
King Of Chicago ,.32.95
AMIGA SOFTWARE
KG Quest 1.2 or 3 32,95
Leader Board 25,05
LOQisllx 69,05
LPD Filer 79,95
LPD Writer 79,95
LPD Planner 79,95
Marble Madness ..32,05
Math Talk 31,05
Math Wizard 31,95
Mean IS 27,05
MICTOleague BB , , . 39,95
MindwalRer 34,95
Module 2 64,95
Money Mentor , , , . 57,95
Music Studio 32,95
Ogre 26,95
On Line 42,95
One On One 26,95
AMIGA SOFTWARE
Organize 62,95
Page Setter 69,95
Par Real 70,95
Pawn 29.95
Phantaale .25.95
Police Oueat 32.95
Power windows ... 54,95
Printmastar + ... .31.95
Prowrile 70.95
Publisher 119.95
Roadwar 2000 . . . .25.95
S.D.I 32.95
Scrtbbie 62.95
7 Cities/Gold 26.95
Shanghai 25.95
Sllenrservlce . . . .25.95
SInbad 32.96
Skylox 26.95
^ggl^ SP S No surcharge for Mastercard or Visa
AMIGA SOFTWARE
Sftwks Basic 64.95
Sonix 54.05
Space Quest 32.95
Sfargiider 29.95
Strtp Poker 25.95
Superbase Pers . . .89.95
Taaa Timea ...,,.. 25.95
True Basic 99,95
TV Text 62,95
Typing Iblor 21,95
UlIlffla3or4 38,95
VIP Professional 169,95
Winnie/Pooh 20,95
Winter Gaines 25,95
World Games 25.95
lOthFiama 25.95
3D-Graphies 32.95
WordPerfect Call
UnLICnirill inrUrilVIMI lUn* f^m t^aot^ tflXtm, For lasl delivery sendcashlersctwcki or money oider Peraooal and company checks allow 14 ijusjneHs days lo cfeai ScrtooiPO's welcome CO.D. ttilrati
« J3,IM. lnCont,n»rtaluSA inciL-dE S300fof SDltwifesfde's ^^ sriostnafor haio^re minimijmSdOQ MasterCart indVisjordiiis pJeaseiindvdetafiJ*. e"piialwniJalea:>fl signilure Wl resJCe'tsplsaseirdi.aeS^ «lesla« Hi AK FPO APO Pueclo
ftm jnd CjnMiin orfltis iejse M S^* stapong. mlnlmini S611L AJl olte Knlgn snien iiM im tHlpplag, mioimsm SUM All oiitn sfippM oulsxle iIm CmmnM US* srt shpped liis Bass nsuitd u S ml It lorcign sniBBinj ctiiists ekeM int
nwiimum amount you wl tK cliafgM toe KMiljofl^l anxxjnt to get yout pac^ge id yai quickly ana safely AiJ gooi3s ape new atw nelude litlory warranty One to our low pnces an sates are Iinal JUI Befectiws ratutnt mufl have a rcluni autbotiiallDn numbar
Pt^^^F ralnaiii 35?,BIB1 It) MSsn an R fl f cr ytjur rEiurn will noi be accewed Pnces ^mj avaflaSjit/ soBiect io cnange wilhO'jl notice
If you are using a 40-column
monitor, your screen will blank
while portions of this program run.
However, some messages appear
from time to time to assure you that
everything is proceeding properly.
When the program is finished, we
see that it worked properly, reading
back every record as written. When
the drive is in 1541 mode, it doesn't
seem to matter whether we use
SLOW or FAST mode, whether we
use error checking, or whether we
position the record pointer at the
last record in the file,
1571 Mode
Now let's try the test in 1571 mode.
Select SLOW mode and 1571 mode,
turn on error checking, select 15
records, and select to position the
record pointer. At the end of this
test, you should see that everything
worked properly again.
Rerun the test, selecting FAST
mode and 1571 mode. Turn error
checking off this time. Choose 15
records, and tell the program not to
position the record pointer. After
the tenth record is written, you
should see the drive light blink,
accompanied by sounds of protest
from the drive, You will see an
ILLEGAL TRACK OR SECTOR er-
ror message. (Even though error
checking is turned off, the program
automatically checks the error sta-
tus after every tenth record.) The
program continues trying to write
the remaining five records, and
eventually finishes with another
error message.
At this point, the disk contains
a corrupted relative file. If it had
contained other files, the corrupted
relative file might have damaged
those files, as well.
It is nearly impossible to read a
corrupted relative file reliably.
When a program tries to do so,
several things may happen.
The subroutine in lines
2050-2160 is designed to detect
corrupted records. When this oc-
curs, you will see a flashing mes-
sage and hear a bell sound. If the
data is not too badly corrupted, this
routine is called repeatedly, each
time it encounters a garbled record.
If the data is more seriously
corrupted, the program itself may
abort with the error message
STRING TOO LONG. If this hap-
pens, press RUN/STOP-RESTORE
to recover control, then type
DCLOSE:DCLEAR and press RE-
TURN before proceeding further.
In the worst case of corruption,
the computer and disk drive will
silently lock up, ceasing all activity.
If this occurs, follow the same pro-
cedure described in the preceding
paragraph.
The test shows that it is neces-
sary to check the error channel —
with a slight time delay as shown in
lines 2010-2020 of the program-
when creating relative files in 1571
mode. To confirm that the corrup-
tion does not result from failing to
position the record pointer, you can
rerun the test if you like, entering Y
when asked about the pointer. As
long as the error/delay option is
turned off, the file is corrupted.
Perhaps, you might think, the
errors result because we are in
FAST mode? To test this possibility,
rerun the program, choosing SLOW
mode and 1571 mode, turning the
delay/error check option off,
choosing 15 records and answering
yes to the record pointer question.
With these parameters, the relative
file usually writes with accuracy,
but occasionally aborts with the er-
ror message DEVICE NOT PRE-
SENT. Reading the records back is
a real problem. It is nearly impossi-
ble to read record 15 without a DE-
VICE NOT PRESENT error. (If this
error occurs, press RUN/STOP-
RESTORE, then type DCLOSE:
DCLEAR and press RETURN.)
Time Delay
Clearly, some errors will occur
when writing a relative file in
SLOW mode on the 1571 without
the time delay and error check used
in this program. In 1541 mode, it
didn't matter if we turned that op-
tion on or off, but it seems essential
in 1571 mode.
Let's see whether the time de-
lay is actually doing anything.
Modify lines 2010-2020 so they
look like this:
2010 REM; T2=TI-|-5
2020 REM: IF TI<T2 THEN 2020
We have disabled the delay
(which normally consumes about
1/12 second), but line 2030 still
checks the disk drive error channel.
Rerun the program, choosing FAST
mode and 1571 mode, turning error
checking on, choosing 200 records,
and choosing not to position the
record pointer (that last option is
actually irrelevant). In most tests,
you will find 1 or 2 corrupted re-
cords for each 1 00 records that you
create. The time delay does seem to
have an effect, after all.
As a rule, you can enhance the
reliability of relative file handling
by checking the error channel, with
this slight time delay, upon every
file access. If you use the method
employed in this program, the time
delay will be consistent even if you
later compile the program (compil-
ing BASIC programs greatly speeds
up their execution). It also is recom-
mended that you follow Commo-
dore's advice in positioning the
record pointer both before and after
you access a record.
This advice is imperative when
using the 1571 drive in 1571 mode.
When using it in 1541 mode (or
when using an ordinary 1541
drive), you can often get away
without the time delay/error
check — provided that you access
records in numerical sequence (re-
cord 1, record 2, and so on). How-
ever, if your program writes files in
nonnumerical order (for instance,
record 1, record 5, and so on), it is
necessary to position the record
pointer before and after each opera-
tion, and to use the time delay/
error check, as well.
Relative File Test
For instructions on entering this program,
please refer to "COMPUTEI's Guide to Typing
In Programs" elsewtiere in this issue.
REM; RELATIVE FILE TES
TING PROGRAM FOR THE C
-128 COMPUTER AND 1571
DISK DRIVE.
REM: COPYRIGHT 1987 CO
MPUTEl PUBLICATIONS, I
NC.{3 SPACES} ALL RIGHT
S RESERVED.
PRINT" iCLRlCOPYRIGHT 1
987": PRINT "COMPUTE 1 PU
BLICATIONS, INC."
PRINT"ALL RIGHTS RESER
VED . "
FORX=1TO1200:NEXT
SLOW: IFPEEK( 3300 )=0THE
N2170
CLR:SCNCLR: COLORS, 14 :N
N?="{38 SPACES]"
CHAR, 0,1, "ONE MOMENT P
LEASE. . . ":SCRATCH"R*":
GOSUB2030 :COLLECT : GOSU
B2030
CHAR,0,3, "C-128: SLOW
{ SPACE iMODE OR FAST MO
DE":CHAR, 0,4, "ENTER 'S
' OR 'F' ":'INPUTM05
JH
1000
BR
1010
BA
1011
FX
1012
OX
1013
ES
1020
HF
1030
AX
1040
PQ
1050
112 COMPUTEI July 1987
II
II
II
II
11
11
BSV^
.. I' I -/ -y .m V f
)
!■■. ^T If i
"it
»
-ni
ir m
'IbdB'
■■■.
r .w
if * t '
# . r i
ABBA'S St/PEI? BUYS
ATARI XL/XE
Pac Man (R) $12.00
Donkey Kong (R) 12.00
Donkey Kong Jr. (R) 12.00
Joust (Rl 1 2-00
Jungle Hunt (R) 12.00
Moon Patrol (R) 12.00
Timewise (D) 9.99
Star Raiders II (Dl 12.00
Oix IR) 9.99
Paint ID) 15.50
Star Raider IR) 9.99
Dig Dug (R) 12.00
Roboiron; 2084 (R> 12.00
Missile Command (Rl , . , 9.99
Home Filing Manager {Rl 1 5.50
Skywriter (R) 12.00
Invitation to Programming •'I (C) . . . . 2,99
ATARI
ARCADE CHAMP KIT
14
95
INCLUDES: Pac Man,
Qix, Two Joysticks
&• Cartridge Holder
BASIC
TUTOR KIT
22
95
INCLUDES; 3 Tapes on
Basic &
2 Books
COMMODORE 64/128
MASTERTRONICS
Captive $4.99
Vegas Jackpot 54.99
Golden Talisman $4.99
1985 ■ The Day After S4.99
Ant Attack S4.99
Challenger $4.99
Spooks S4.99
Black Crystal S4.99
Se-Kah of Assiah $4.99
Quest For Holy Grail $4.99
Finders Keepers $4.99
Big Mac $4.99
TIMEWORKS
Data Manager $4.95
Money Manager $4.95
Electronic Checkbook S4.95
ALL 3 FOR $12,00
WE CARRY A FULL LINE OF HARDWARE ft SOFTWARE FOR THE ATARI & COMMODORE. PLEASE CALL.
LASER 1 28'": the best of the Applmlh and lie
II
II
II
II
11
II
II
II
II
!! CASIO - THE KEYS TO MUSICAL CREATIVITY
Input'Output; floppy disk drive;
serial printer interface; parallel
printer interface; mouse interface;
modem interface; 80 colunm text;
expansion slot; numeric keypad
0/ Vid&o Technology Camputors Inc.
SUIMCOM
P.Q. PARTY QUIZ
ONLY
$'^495
ATARI OR COMMODORE (8-BIT)
^89
95
SKI
DIGITAL
SAMPLING KEYBOARD
8-tiit saniplirHj; l-noie
polyphonic; S-track memory
buili-in speaker
SK5
SAMPLING KEYBOARD
32 keys; Sriote polyphonTc;
8 preset sounds. 10
built-in rhythms: $ 1 1 Q95
tempo control ,.,... ... 113
SK8
DIGITAL SAMPLING
KEYBOARD
4-sample aouncia; 8-bit
sampling; 4.notc poly-
phonic; built-in speaker . .
CZ-230C
DIGITAL SAMPLING
SYNTHESIZER
100 factory presets;
built-in rhythms: psttern
memory: monitor speaker
139
95
^319
95
CASIO
TYPEWRITERS
CWIO $109
CW-3D $179.00
DISKS
NASHUA DS/DD 5'/." w/Sleeves
$39.00 3 Hundred or
$31.00 a Hundred
In Quantities of a Thousand
COBRA ANSWERING MACHINES
AN8300
ANSWERING MACHINE
NON REMOTE ANSWERING SYSTEM:
MICROPROCESSOR CONTRGLtED: ONE TOUCH
COMMAND AOTOMAIIC ANSWER Er PLAY, IVOXI
KOICE ACTIVATION ELECTRONIC BULLETIN
BOARD MEMO FtAtURE . ^ _„ „
$5995
AN 8400
ANSWERING PHONE
REMDtE ANSWERING SYSTEM:
MICROPROCESSOR COKTROLLEO: ONE TOUCH
COMMAND AUTOMATIC ANSWER AND f UY:
IVOXI VOICE ACTIVATION; ELECTRONIC
BULLOIN BOARD MEMO FEATURE, ^
*79^^
AN B50Q
ANSWERING MACHINE
BEEPERLESS REMOTE ANSWERING SYSTEM;
MICROPROCESSOR CONTROLLED: ONE TOUCH
COMMAND AUtOMATK ANSWER i PLAY: (VOX)
VOKE ACTIVATION: ELECTRONIC DULLETIN
BOARD MEMO FEATURE. ^_^
$3995
ALL TITLES ON DISK UNLESS MARKED (R) FOR ROM CARTRIDGE & (C) FOR^CASSETTE TAPE
Order Line WE CHECK FOR STOLEN CHARGE CARDS Customer Service
1-800-282-0333 «« = ,<. « o ,« , r^ * Ohio Residents
ORDERS ONLY! Safes Personnel Do """"^ ^" ^'^'^ P'"' S^*" ^"'^ "^ 1-513-879-9699
PrevioC: SXlt'?;::;Cct°s"pecs. 37 S. emad street, Fairborn, OH 45324 f^
1-513-879-9699
^•-gl SOFTWARE ONLV - Prepaid ordera oi/Bf $50 receive free shipping via UPS in conlinental U.S. Please add $2 orders under $50. HAHDWARE and all
I orders requiring shipmenl via U.S. Posr Office are subject to additional freight charges. C.O.D. orders under $100.00 accepted - add $5 Charge card
*Jt'^l orders add S2 service charge. Ohio residents add 6% sales tax. Personal checks require a three-vireeK waiting period. No wailing when paid by credit
-^ MUSt"bE ACc5SpA,i;?Sir;N'A,?rHSS]ll"l^SS'NU^^^ '"" """ ""'""■ ""=' CTE AD NUMBER WKEN ORDERING. AU RETURNS
DC 1060
IFMOS <> " S '■ ANDMO$ < > "F'-T
25:GOSUB2010
030 :PRINTF2? : IFLEN( F2S
HEKCHAR , 0 , 4 , NN? : PRINTC
CH
1420
RECORD* 3, (PT),42:G0SUB
) < > 16THENCD=6 : SU9=F2? :
HR?(7) :GOTO1050
2010:PRINT#3,F3${J) :G0
GOSUB2050
XC 1070
CHAR, 0,6, "DRIVE: 1541
{SPACE}H0DE OR 1571 MO
SUB2010:RECORD#3, ( PT ) ,
42:GOSUB2010
RC
1730
REC0RD#5, (l),42iGOSUB2
010:INPUT#5,F3?:GOSUB2
DE":CHAR, 0,7, "ENTER '4
cs
1430
REC0RD#3, (PT),52:GOSUB
030tPRINTF3S:IFLEN(F35
1' OR Wi* ":INPUTDD$
2010:PRINT#3,F4$(J) :G0
)<>9THENCD=7iSU5=F3$:G
PD 1080
IFDD? < > "41 " ANDDDS < > " 71
SUB2010 : RECORD* 3 , ( PT ) ,
OSUB2050
"THENCHAR, 0 , 7 , NN? : PRIN
52:GOSUB2010
AM
1740
REC0RD#5, (I),52:GOSUB2
TCHR?(7) :GDTO1070
RJ
1440
REC0RD#3, (PT),72:GOSUB
010;INPUT#5,F4$:GOSUB2
QC 1090
CHAR, 0,9, "WANT TO CHEC
K ERROR CHANNEL": CHAR,
0,10, "ENTER 'ON' OR '0
2010:PRINT#3,F55(J) :GO
SUB2010:RECORD#3, ( PT ) ,
72:GOSUB2010
030 : PRINTF45 : IFLEN (F45
) <>19THENCD=8 :SU?=F4S :
GOSUB2050
FF' "iINPUTCKS
CQ
1450
BEND
CR
1750
REC0RDt5, (I),72:GOSUB2
PD 1100
IFCK? < > "ON" ANDCK5 < > "OF
HQ
1460
IFCK5=" OFF "THEN BEGIN
010 : INPUT#5 , F5? :G0SUB2
F "THENCHAR, 0 , 10 , NN? : PR
CR
1470
REC0RD#3, (PT) , 1 : PRINT*
030 : PRINTF5 ? : IFLEN ( F5 ?
INTCHR5 ( 7 ) ! GOTO1090
3,F1$(J) :REC0RD#3, { PT )
) < > 29THENCD=9 : SUS=P5? :
XR 1110
CHAR, 0,12, "HOW ^SANy RE
,1
GOSUB2050
CORDS DO YOU WANT":CHA
RR
1480
RECORD* 3, (PT), 25: PRINT
PB
1760
BEND
R,0,13, "TO CREATE (10
#3,F29(J)jRECORD#3, ( PT
HJ
1770
IFCK5="0FF"THENBEGIN
( SPACE }TO 999)":INPUTN
),25
CG
1780
RECORD* 5, (I),liINPUT#5
R$:NR=VAL(NR5)
RD
1490
REC0RD#3, (PT), 42: PRINT
,F1?:PRINTF1? : IFLEN (Fl
XR 1120
IFNR<10ORNR>999THENCHA
R, 0 , 1 3 , NNS : PRINTCHR9 ( 7
#3,F35(J):RECORD#3, ( PT
),42
$ ) <> 23THENCD=5 : SU5=F1 ?
:GOSUB20S0
) :GOTO1110
HK
1500
REC0RD#3 ,( PT ), 52 : PRINT
GB
1790
RECORD#5 , (I ) , 25 : INPUT*
KB 1130
CHAR,0,15, "WANT TO POS
ITION POINTER TO";CHAR
#3,F4S(J):RECORD#3, ( PT
),52
5 , F2 ? : PRINTF2$ : IFLEN ( F
2? ) <>16THENCD=6:SU$=F2
,0,16, "LAST RECORD 'Y'
SO
1510
REC0RD#3 ,( PT ), 72 : PRINT
$:GOSUB2050
OR 'N' " rINPUTPP?
#3,F5$(J):REC0RD#3, ( PT
EJ
1800
RECORDtS , ( I ) , 42 : INPUT*
KM 1140
IFPPSo "Y"ANDPP$<> "N"T
),72
5,F3$:PRINTF35:IFLEN(F
HENCHAR ,0,16, NN? : PRINT
EA
1520
BEND
3$)<>9THENCD=7:SU?=F35
CHR5(7):GOTO1130
XA
1530
IFJ=10THENPRINT : PRINTD
:GOSUB2050
RA 1150
IFDDS= "41 "THENOPENl 5 , 8
SS
SX
1810
REC0RDt5, (I), 52: INPUT*
,15,"U0>M0":GOSUB2030i
BH
1540
IFPT=NRTHENPRINT : PRINT
5 , F4S : PRINTF4$ : IFLEN ( F
CL0SE15
DS$:GOTO1560
4?) <>19THENCD=8:SU?=F4
JP 1160
IFDD?="71"THENOPENl5,8
EC
1550
NEXT
S:GOSUB2050
,15,"U0>M1":GOSUB2030:
AS
1560
DCL0SE#3
AQ
1820
REC0RD#5, (I), 72: INPUT*
CL0SE15
MA
1570
IFPT=NRTHENSLOW: PRINT :
5 , F5$ : PRINTF5$ : IFLEN ( F
JE 1170
FT5="R-"+M05+"-"+DD5+"
-"+CK$+"-"+PP5+"-"+NRS
PRINT "TOTAL # OF RECOR
DS WRITTEN=";PT:COL0R5
5? ) < > 29THENCD=8 :SU?=F5
S:GOSUB2050
HF 1180
IFPP?="N"THEN1250
, 2iPRINT:PRINT"END OF
MF
1830
BEND
CP 1190
PRINT: PRINT "WAIT - WRI
( SPACE IWRITING PROGRAM
BA
1840
SLEEP1:IF1=NRTHEN1910
TING POINTER TO REC . #
": PRINT "PRESS ANY KEY
RQ
1850
CHAR,0,5,LEFT?(NN5,23)
"+STR5(NR)+" . " :SLEEP2
{ SPACE } NOW . " : GETKEYK? :
KP
1860
CHAR, 0,6, LEFT? (NN? , 16 )
FJ 1200
IFM05="F"THENFAST
GOTO1590
PB
1870
CHAR, 0,7, LEFT? (NN?, 9)
GQ 1210
D0PEN#1, (FT$) ,L102
MQ
1580
PRINT: PRINT "TOTAL # OF
DD
1880
CHAR, 0,8, LEFT? (NN?, 19)
CD 1220
RECORDtl, (NR),1
RECORDS SO FAR=";PT:G
QQ
1890
CHAR, 0,9, LEFT? (NK? , 29 )
XC 1230
IFDS=50THENPRINT#1,CHR
OTO1270
MK
1900
NEXT
5(255) :GOTO1220
SF
1590
SCNCLR:COLOR5,14
CG
1910
DCL0SE*5
DX 1240
GOSUB2030:DCLOSE#1
XR
1600
PRINT "READING BACK REC
SH
1920
SLOW : PRINT : PRINT : PRINT
EJ 1250
PT=0
ORDS # 1 TO"+STRS(NR)+
"TOTAL # OF RECORDS RE
JE 1260
SLOW: SCNCLR: PRINT "CREA
".":SLEEP2
AD= " ; NR: C0L0R5 , 2 : PRINT
TING TEXT FOR THE RELA
MC
1610
IFMO?-"F"THENFAST
"END OF READING PROGRA
TIVE FILE. ":SLEEP2
GX
1620
DOPENtS, (FT?) ,H02:GOS
M."
RC 1270
FORJ=1TO10
UB2030
DX
1930
CATALOG :GOSUB2030
PA 1280
F1$(J)="23 CHARACTER F
AQ
1630
F0RI=1T0NR
GR
1940
C0L0R5, 14: INPUT "WANT T
lELD*****"
QB
1640
CHAR,23,5,CHRS(158)+CH
0 SCRATCH RELATIVE FIL
DE 1290
F2?(J)="16 CHARACTER F
IE"
RS(95)+CHR?(153)+"
{6 SPACES)"
E( SHIFT-SPACE) (Y/N)";N
Y?
DJ 1300
F3S(J)="09 CHARAC"
SG
1650
CHAR, 16,6, CHR? ( 1 58 )+CH
XX
1950
IFNY?="Y"THENSCRATCH"R
BX 1310
F4$(J)-"19 CHARACTER F
I ELD*"
R?(95)+CHRS(153)+"
(13 SPACES)"
* " :GOSUB2030 :COLLECT:G
OSUB2030
GH 1320
F5S(J)="29 CHARACTER F
MG
1660
CHAR, 9,7, CHR$ ( 1 58 )+CHR
JK
1960
CATALOG :GOSUB2030
lELD***********"
$(95)+CHR?(153)+"
PB
1970
COLORS, 2:PRINT"PRESS A
BE 1330
NEXT
[20 SPACES)"
NY KEY TO RE -RUN PROGR
AD 1340
SLOVJ : PRINT : PRINT "WRITI
NG ARRAY ITEMS ON DISK
."!SLEEP2
CC
1670
CHAR, 19,8, CHR? ( 158 ) +CH
R5(95)+CHR?(153)+"
[10 SPACES)"
AM.": PRINT "PRESS ' "+CH
R$(95)+"' TO QUIT PROG
RAM."
KC 1350
IFMO$="F"THENFAST
RR
1680
CHAR,29,9,CHR?(158)+CH
AC
1980
GETKEYK?
RB 1360
D0PEN#3, (FT?),L102!GOS
R5(95)+CHR$(153)
AR
1990
IFK?=CHR? ( 95 )THENEND
UB2030
QX
1690
COLORS , 2 :CHAR, 0,3, "REC
EM
2000
GOTO1030
HJ 1370
FORJ=1TO10
ORD #"+STR5(I):C0L0R5,
HH
2010
T2=TI+S
MA 1380
PT=PT+1: PRINT PT;
14:CHARi0,5
KH
2020
IFTKT2THEN2020
QH 1390
IFCK5="0N"THENBEGIN
MB
1700
IFCK?="ON"THEN BEGIN
DQ
2030
IFDS < 20ORDS=50THENRETU
PK 1400
REC0RD#3, (PT),1:G0SUB2
XM
1710
REC0RD#5 , ( I ) , 1 SGOSUB20
RN
010:PRINT#3,F1$(J)!GOS
10 :IKPUT#5 , Fl? :GOSUB20
EB
2040
PRINTDS?:END
UB2010:RECORD#3, (PT),1
30:PRINTF1?:IFLEN(F1?)
KC
2050
SLOW
:GOSUB2010
<> 23THENCD=5 :SU$ = F1? :G
HF
2060
CHAR, 0,CD,NN5
QF 1410
REC0RD#3, {PT),25:GOSUB
OSUB2050
GK
2070
FORB=lT03
2010:PRINT#3,F25(J) :G0
CE
1720
RECORD#5, (I),25:GOSUB2
MP
2080
CHAR, 0 , CD, SU? , 1 :CHAR, 0
SUB2010:RECORDt3, (PT),
010:INPUT#5,F2?:GOSUB2
,12," CORRUPTED RECORD "
114 COMPUTB July 1967
SOFTWARE DISCOUNTERS/
OF America ., , UDof^
,«7
.J59
.S29
10th Frame Bowling Slg
ACCQUDE
MeanieColf $30
Mean 18 Famottt
Course Ditk J14
ACTIVISIQN
H«tker }».8a
Hiclrr 2 - S24
CorUI J27
Shjn^hai jjj
Ta» Times $23
ARTWORX
Bridge 4.0 $i6
Stiip Poker S25
Dili Disk. 1 Female ..S14
Dill Disk '2 Male ..,$14
Data Diik '3 Female ..J14
Linkwofd Languages:
Dutch 119
French J19
German SI 9
Italian S19
Russian 919
Spanish SI 9
AVALON HILL
Dr, Rulh'sGame S19
Super Bowl Sunday ...f21
SB.S. Champs Disk . . S14
S.B.S.'SS Team Disk. . $14
BRODERBUND
Ancient Art of War.
Bank St. Writer Plul
Carm«n Sandiego
USA
World J25
Karaleka %2%
Print Shop i3b
P.S. Companion $32
P.S. Graphics
Holiday Edition ... .$21
P.S. Graphics
Library 'lor •'2. $11 Ea.
Toy Shop »32
Type! $30
CBS
Success wilK Algebra Call
Success wilh Math. . . .Call
COA
Mr. Bolton
Bartender's Guide . $9.08
America Cooks Series:
American $9.88
Chinese $9.88
French »9.B8
Italian.. $9.88
Meiican $9.88
CtNTRAL POINT
Copy 2 $23
PC Tools $23
DATA EAST
Comnundo $24
Tag Team Wrestling . . .$24
DAVIDSON
Grammar Gremlifu ...$30
Homeworker $59
Math B laster . $30
SpelMt $30
Word Attack $J0
ELECTRONIC ARTS
Software Classic Series:
Archon $9.S8
IBM SOFTWARE
Mind Mirror $9.88
Music Const. Set , , ..$9.88
One^sn-One S9.88
Pinball Const. Set ...$9.08
Seven Cities Gold . . $9.88
Super Boulder Dash $9 88
ELECTRONIC ARTS
Amnesia $2^
Chessmaster2000 $26
Grand Stam Bridge . . . .$39
Murder Party $26
Scrabble $2j
Starfleetl $32
Starflight $J2
World Tour Golf. $32
Em
Create A Calcndat . ..$19
Pilslopl $9.88
P.S. Graphics Scrapbook:
•1 Sports $U
•2 Off the Wall $16
•3 School $16
Sub Battle Simulator . $24
Summer Games 2 $34
World Games . $24
CAMESTAH
Champ. Baseball $24
Champ. Basketball ... .$24
Champ. Coif $24
CFLCh. Football $24
HAYDEN
Sarg(»n3Chess $2S
HITECH EXPRESSIONS
Award Ware $9.88
Card Ware $6.88
Heart Ware $6.88
Party Ware $9.88
lr<FOCGM
Bureaucracy $24
Hitchhikers Guide ....$24
Hollywood Hijini $24
Leather Goddesses . . . .$24
Zorki $24
Zork Trilogy $44
MASTERTRONIC
F ive a Side Soccer . . . $6.88
Ninja $6.88
Pro Colt $6.88
MECA
Andrew Tobias; Managing
YourMorrey 2.0 - , .$129
MICROLEACUE
Baseball $24
■Box ScoreiStats
Conspiler $16
'General Mgr.iOv*ner .$19
•1986 Team Disk $12
'Add-on programs!
MICROPROSE
Crusade in Europe . . .$24
F-1S Strike Eagle $21
Silent Service $21
MINDSCAPE
American Challenge ..$24
Balance of Power $30
Bop & Wrestle $19
Crossword Magic $30
Defender of the Crown $24
Infiltrator $19
Perfect Score SAT $44
Sub Mission ,$24
Super Star Ice Hockey $24
PERSONAL CHOICE
Term Paper Writer $32
SIERRA
BlackCauldton $24
King's Quest
1.2. or 3 $32 Ea.
Space Quest $30
SIMON t SHUSTER
Chem Lab $24
Star Trek: Kobayathi
Alternative $24
Promethean Prophecy .$24
Typing Tutor 3 $30
Wehiters:
Spelling Checker ...$39
Thesaurus $44
Wine Cellar $44
SPECTRUM HOtOBTTE
Gato $24
Wilderness $30
SPRINGBOARD
Certificate Maker $36
CM. Library '1 $21
Early Games $21
Easy as ABC $24
Newsroom. $36
Newsroom Pfo $89
N.R. Clip Art '1 $19
N.R.Clip Arl'2 $24
N.R.CIipArl'3 $19
P.S. Graphics Expander $24
SSI
Battle of Aniietam . , . ,$30
Gettysburg $36
Kampfgruppe $36
Rings of Zillin $24
Roadwar 2000 $24
Shard of Spring $24
SUBLOGIC
Football $26
let $32
TtLARIUM
Amazon $9.88
Dragonworld . $9.88
Fahrenheit 4;i $9.88
Nine Princes , $9.88
Perry Mason $9.88
Rendezvous $9.88
THUNDER MOUNTAIN
Top Gun $6.88
TIMtWORKS
'Data Manager . $39
Evelyn Wood Reader $39
Partner $39
'Swiftcalc w/Sideways $39
Sylvia Porter's Financial
Planner $59
•WordWriter $39
'All 3 In 1 Power Pack$79
UNISON WORLD
Newsntajter $59
Printmaster Plus $36
Art Gallery lot 2 $19Ia.
VALUE TIME
Art Library 1 or 2. $6.88 Ea.
Calendars it Stationery $6.88
Greeting Cards $6.88
Signs A Banners $6.88
WtEKLY READER
SlickybearMath $21
Stjckybear Numlsers ..$22
Stickybear Reading ...$23
ACCESS
Triple Pack: BHl, BH2,
Raid Over Moscow .$14
World Class
Leader Board $25
ACCOLADE
Comics $19
Fight Nighl $19
Hardball $19
ACTIVISIQN
Gamemaker Library Disks;
Sci-Fi $16
Sports $16
Gamemaker $30
Chostfauslers $9.88
Hacker 2 $24
Hacker 2 OS $29
Music Studio GS $49
Palnlworks Clip Art
Gallery GS $19
Palnlworks GS $47
Portal $27
Shanghai $21
Shanghai GS $29
Tass Times GS $24
ARTWORX
Bridge 4.0 $16
International Hockey $19
Strip Poker $19
Data Disk '1 (Female) $14
Data Disk '2 (Male) .. $14
AVALON HILL
Dr.Rulh $19
Super Sunday $21
BAUDVILLE
Award Maker' $24
French Paper Pack $9.88
Video Vegas $19
BRODERBUND
Airhearl|12BK) $21
Animate(128K) $42
Bank St. Writer
Plus(128K) $47
Carmen San Diego
USA $27
World $24
Dazzle Draw (128K) . $34
Fanlavislon $30
Katateka $21
On Balance I128K) $59
Print Shop $27
Print Shop Companion $23
P.S. Graphics Library
'1.2ar3 $14Ea.
P.S. Graphics Library
Holiday Edition ...$14
Science Tool Kit $39
Toyshop $32
Type! $27
CENTRAL POINT
Copy 2 $21
DAVIDSON
Algeblailer $27
Grammar Gremlins . . .$27
APPLE II SERIES
Tag Team Wrestll ng . $21
tlECTRONIC ARTS
Age of Adventure . . . $9.88
Amnesia $29
Arcfton $9.88
Archon 2: Adept . . $9.88
Arctic Foi $26
Bard's Tale CS $3]
Bard's Tale 2 $32
Battlefront $25
Carriers at War $30
$29
$6S
$19
$19
$26
$26
$23
Math Blaster
Spell It.
WordAttack
DATA EAST
Commando
.$27
.$27
.$27
Chessmaster 20O0
Deluxe Paint lies
D. Paint Art «1 GS
D. Paint Art -2 CS
Lords of Conquest
Murder Party ,
Marble Madness.
Mind Mirror $9.88
Moebius $36
Movie Maker $9.88
Music Const. Set $9.88
Music Const. Set CS. ..$32
One-orr-One $9.88
Pegasus $23
Pinball Const, Set . ..$9.88
Russia (The Great War) $26
Scrabble ,.$24
Seven Cities of Cold $9.88
Skyfox $9.88
Star Fleet 1 $32
Super Boulder Dash . $9.88
Ultima 4 $36
EPYX
Champ, Wrestling . ...$23
Create A Calendar $19
Destroyer 123
P.S. Graphics Scraphook:
•1 Sports 114
'2 Off the Wall 114
•3 School 114
Summer Games 2 123
Winter Games 123
GAMESTAR
Champ. Baseball (128K)$24
Ch. Basketball 1128K). $24
Champ. Football tl28K) $24
HI-TECH EXPRESSIONS
Award Ware $9,B8
CardWare $*.B«
Heart Ware $6.88
Party Ware $9.88
INFOCOM
Bureaucracy (128K) . . .$24
Hitchhiker's Guide $19
H oily wood H Ij Inx $24
Leather Goddesses $24
Zork Trilogy $44
MECA
Andrew Tobias: Managing
Your Money 2.0 . . . .$95
MICROLEACUE
Baseball $24
Box Score Stats $14
General Mgr.fOwner $19
1986 Team Disk $12
MICROPROSE
FIS Strike Eagle $21
Silent Service $21
MINDSCAPE
American Challenge ..$24
Bop*Wrestle $ig
Crossword Magic $30
Infiltrator $19
Perfect Score SAT $44
MONOGRAM
Dollars & Sense (1 28K| $69
PERSONAL CHOICE
Term Paper Writer (1 28lt)$30
SHARE DATA
Family Feud $8.88
Jeopardy $8.88
Wheel ol Fortune $8.88
SIERRA
BlackCauldron $24
Klng'sQuesIl or} $30ea.
Wrath oi Denelhenor $16
SPINNAKER
T-Shirl5hop $30
T-shirt Art '1 $14
SPRINGBOARD
Certificate Maker $29
CM, Library Vol, 1 - - . $21
Newsroom $32
N.R.Clip Art 'I or<] $17
N.R.Clip Art '2 $23
STYIEWARE
Mulliscribe2.0(12SK] $44
Multlscribe2.0GS $65
SSI
Sattlecruiser $35
Colonial Conquest . . .$24
Gettysburg $35
Phantasiel,2Dr ] $24 ea.
Realms of Darkness .$24
Rings of Zilfin $24
Roadwar 2000 $24
Shard of Spring $24
War in S.Pacific $35
Wizard's Crown $24
SUBLQCIC
Baseball $32
EllghtSimulator2. . $30
F.S. Scenery Disks. $14 ea.
Jet $26
TELARIUM
Amazon $9.88
Dragonworld .$9.88
Fahrenheit 451 $9.88
Perry Mason $9.88
VIP TECHNOLOGIES
VtP Professional CS $179
WEEKLY READER
Stickybear ABC's $23
Stickybear Basic $23
$23
$23
$23
$23
$23
Stickybear Math 1
Stickybear Math 2 .
Stickybear Numbers
Stickybear Printer .
Stickybear Stupes .
Stickybear Spellgrabber $23
Stickybear Typing . . . $23
WINDHAM CLASSICS
All ce in Wonderland . $9.88
Swiss Family Robinson $9.88
Treasure Island $9.88
Wizard oIOz $9.88
Commodore 64 & 128 Owners: Please read our
full page ad in this months Compute's Gazette!
P.O. BOX 111327-DEPT. CP-BLAWNOX, PA 15238
71'J.^Jl'r ^*" '^■*"°r'"? °'i"'"'l T"™ A Conditions Carefully Before Placing Your Order: Orders with cashiers check or money order shipped Immediately on in slock items
!l'r"*.'.^.S°""".?'' '^.''"'■': '"r ^ *«'" l'""""^^. N° C.O,D.-.l Shipping: Continental U.S.A. -Order, under $100 add $3; free shipping on order, over ilOT. AK HI, FP^i
ju.t type GO SDAarrf shopping for «>ft*«e will never be the ume again' HOURS: Mon.-f ri..9AM-5;30 PM, Sal. 10AM-«PMEa.tern Time, BecauH Ihi. ad had to be written 2-3 mos
before it .a. published, price. & aya.labillty are subiect to change! When sending a mall order, please specify make « model, of your cnmpu",!
News & Products
Ice Hockey Simulation
From Mlndscape
Mindscape has introduced Superstar Ice
Hockei/, a computer hockey simulation
that allows one or two players the
chance to compete against the com-
puter or each other, to coach a team,
and to manage a league. As a player,
you take the ice as center or goalie: fire
slapshots, hip-check opponents, make
slick passes, and block shots. As the
coach, you set up and rotate your play-
ers' lines. And as general manager, you
trade and draft players, send them to
training camp, and aim to build a weak
franchise into a contender for the Sport-
Time Cup.
Superstar Ice Hockey is currently
available for the Commodore 64 for
$34.95; IBM PC and Apple II versions
are planned.
Mindscape, 3444 Dundee Rd.,
Northbrook, IL 60062
Circle Reader Service Number 236.
First Amiga Titie
From MicroProse
An enhanced version of Silent Service is
MicroProse's first title available for the
Commodore Amiga.
Silent Service puts the player in
command of a World War II submarine
in the South Pacific. Enhancements for
the new Amiga version take special
advantage of the computer's graphics,
sound, and animation capabilities. Sun-
sets, burning ships, oil slicks, and the
intricately designed battle station
screens are displayed using more than
32 colors. Enemy cruisers, escorts, and
aircraft carriers can now be differentiat-
ed on the map views, and digitized
sound recordings from actual subma-
rine listening devices add to the realism
of the simulation. Game controls have
been simplified to employ onscreen
icons for all function and activity selec-
tions. Using these icons, the player can
control the submarine with the mouse.
The player-selected and historical
scenarios range from single-ship attacks
to multipatrol missions with heavily es-
corted convoys. All of a submarine's
critical battle stations are represented,
including the conning tower, periscope,
engine room, and bridge. Multiple diffi-
culty levels and automatic time scaling
are also included as game features.
The new Silent Service version
works on all Amiga computers with
512K of memory. It was designed to be
operated with a mouse, although joy-
stick and keyboard controls are also
supported. Suggested retail price is
$39.95.
MicroProse Simulation Software, 120
Lakefront Dr., Hunt Valley, MD 21030
Circle Reader Service Number 237.
Atari ST Version Of True
BASIC Released
True BASIC, developers of the Trite
BASIC language system and publishers
of TBI Educational Software, has an-
nounced that version 2.0 of the True
BASIC language is now available for the
Atari ST. This version, which was re-
cently released for the IBM PC, offers a
high level of graphics support and is
significantly faster than ST BASIC,
which makes it a language tailored for
use with the sophisticated graphics ca-
pabilities of the ST. In addition. Version
2.0 offers modules, a programming
concept found in languages like
Moduia-2 and Ada, which can be used
within a program to facilitate data shar-
ing between program segments, or can
be compiled separately and stored as
libraries for use with other programs.
The Atari ST version of True BASIC
is available for $99.95.
True BASIC, 39 S. Main St., Hano-
ver, NH 03755
Circle Reader Service Number 238.
Atari And Macintosti
Versions Of Springboard
Products
Springboard has announced the release
of Atari and Macintosh versions of its
popular programs. Certificate Maker
and Certificate Library Volume 1. To-
gether, these two programs provide the
user with more than 300 predesigned
certificates, awards, diplomas, and
licenses covering everything from aca-
demic, business, and athletic achieve-
ments to activities involving families
and friends. Each certificate can be per-
sonalized for a different occasion or
person. The user selects a title or head-
line, chooses a border to frame it, enters
a personalized message, fills in the sig-
nature and date line, and prints out the
certificate. Certificate Maker provides
more than 200 certificates, 24 border
choices, and three dozen gold-foil and
colorful stickers for a finishing touch.
Certificate Maker and Certificate Li-
brary Volume 1 supports most popular
dot-matrix printers. Suggested retail
price for the Atari and Macintosh ver-
sions of Certificate Maker are $49.95
and $59.95, respectively; both versions
of Certificate Library 7 are $34.95.
Springboard Software, 7808 Creek-
ridge Cir., Minneapolis, MN 55435
Circle Reader Service Number 239.
New Simulations From SSI
SSI is now distributing Phantasie III:
The Wrath of Nikademus, the final con-
frontation between a band of adventur-
ers and the dark Lord Nikademus with
his army of vile beasts and creatures.
The sequel boasts improved fea-
tures such as a detailed method of han-
dling wounds that determines location
and extent of injuries; more strategy
and combat options, such as the ability
to move each character to different po-
sitions in the party; enhanced graphics
with all new character and monster dis-
plays; more potent magic spells; and
increased playing speed while traveling
across the wilderness or into dungeons.
Players can also reuse favorite charac-
ters from previous Phantasie games.
Phantasie II! is a multiple-character
role-playing game wherein players as-
semble a party of up to six adventurers.
Players can create a wizard elf, a fighter
dwarf, or combine in other ways the
eight races and six classes of characters
which include humans, elves, dwarves,
thieves, warriors, and wizards. The
characters use spells and weapons to
invade difficult terrain, escape dun-
geons, destroy demons, and confront
and finally destroy the evil power of
Nikademus, the Dark Lord. Over 36
types of monsters are fought by players
in their quest which takes them through
a myriad of dungeons. Suggested retail
price is $39.95,
SSI has also begun shipping its
118 COMPUTEI July 1987
A ATARI' A
^1
The one Slop shop
ORDERS ONLY
CALL TOLL FREE
1-800-225-5878
ORDER STATUS, INFORMATION, R,A,s
1-313-595-0788
BULK ZV2 DISKS
LIFETIME
WARRANTY!
SSDD
QTY
25
DSDD
QTY
25
■> f\^ SSDD ^. __
•.99 °s 1.29
FREE CATALOG!
520ST SYSTEMS 1040STr,^=-
$659 COLOR $CALL <- ^iW
$469 MONO $CALL ^ ""^
OR CALL FOR
LATEST PRICES
3V2" Continuous Label Kit
• 500 3V2" Disk Labels
•*r FREE Label Program
• Automatically Reads
Disk & Makes Label
• Create Database
All Just
^.95
PANASONIC 1080i
* 120 CPS
* EPSON IBM
* NLQ MODE
* FRICTION
TRACTOR
$199
2 YEAR
WARRANTY!
ATARI SH 204
OH
SUPRA DRIVE
20 MEG HARD DRIVE
^■Oj=f CHOICE SAVE LOW PRICE
$549
1200 BAUD MODEM
KIT
• AVATEX 1200 HC
• ST TALK SOFTWARE
• COMPUSERVE STARTER KIT
• RS-232 CABLE M-F
COMPLETE
KIT JUST
$139
ST H/lonitor Riser
WIH ANY SI 0 M WOtfSE - COMPIEIE Vtmi P1CHBES, DESCWTONS MO
MOfiE T)euS««)S OF ITEMS AT lOW, LOW PflKSS'
* Covers up all cables
* Organizes System
* Room for Drives
* Metal Contstruction
ST HARDWARE
A;an KMQST Cai
Alan 314 Drve .
Atsn 354 Dnve..
Aian 520ST
AOlt SCI 224 Colff MonrttK
AJan SH2CM HjrdPfiw?
At3n SMI 2i Vcro Monrta
AOn SMM804 PnrlEV
Alan SX212 Uodom
Si4va2C Meg Mart Onve
Upgrade. EZ"kani_
ZTtne I04C
Z-Tne 520 ,. ., ».95
199 GO
105 00
259 00
29900
539 00
119 00
169 00
79 00
M90Q
15900
4996
PRirfTERS
OmalB 20 w Pkig-N-Pnnt
Panasonic KX
PSTasomcKX
PanascmcKX
PaT^OTHCKX-
PcnasoncKX
Pjnascnc KX-P3!51
c KX-P3131
i-Pioaa
;-pi09ii
;-Pl092i
;-P1592
;-P1595
tSHOO
19900
259 00
33500
399 00
489 00
399 00
2£5CI0
DUST COVERS
1040 ST . . 995
533 ST 6.95
520STS>sterfi _. 2495
GCTTwi 10 6.95
ew PC KevtoanJ ._ _ 6.95
ewPCSyaem. 2395
Panasonc ioe&9CW1 ^._695
Sf 3H ^.5.96
SF3&* ..._ .._59S
SM 1224 „ M 95
SM 124 ^ .„ 11 96
COLOR PAPER
SLUE. YEUOV GREEN PiMK
WHITE. SAIMON $ GOlii
500 Sheets (Any Coty)
20* LZCm 9 5x11 69S
RartKwPack *1 (PVBl 69S
Ranbow Pat* *? [Gr S-Go) 6 95
CONTIGUOUS CARD SIOCK
3X5 499
-1X6 ?99
5X7 999
CONTINUOUS LABELS
Au>o C^&sefle. Vft^m g 99
DEk i? 75 X 2j £50 Whno . -199
File Foldor (3^ >^ &> 'M 9W
Waiiil^ X igj IQOO 6 33
CABLES, tNTERFACES
AQ Swflcfi ttoi: H.u;Uk.H ;i9 9b
AS Sw*cti Boj( RS2a2 39 95
AB-X Crossover 00* Pai- 49 95
IBM ST PTWtfof Ca&O 10 9 96
IQMST Pnrter Cabto 6 695
McrralufTer 59 95
PR Comacaon 7995
RS-Z32 F F 6' 9 95
RS-232 WF to 1295
RS-33aMF6 9 95
RS^ZSeWMg 995
ST Dns/e Cab* 6 1495
XES«iai6 R95
MJSCELLANEGUS
ACCESSORIES
H'T'rtflSlNTfl
525" &sk NoKhw
Amaray Pnnlw Srand
Mouso '-louse
Mouse Wai
Pwrter Swnd 2 Pwoe
Sv OuncHI Surge Svfi
Aian EccrOTV -
Epyi 500XJ ,.._..
14 d5
795
1495
495
795
1295
14 95
455
DISKETTES
Ek*3 5 SSDO
&jfc3S DSDD
Bufc5 25 OS DO
BASF 3 5 SSDD
BASf 35 OSOO
BASF 5^5' DSDD
BASF 525' DSHD
Maw>«35^^DD
Ma*el 3 S" DSDD
Mi.cHiS25 SSDD
Ma^W 525 DSDC
Maiic-I 525 DSHD
S0f>y3 5 SSDD
Sony 3 5 DSDD
Sony 5 25 SSDD
Soriy 5 25 DSDD
Sory 525 CSHD
3M'l5 SSDD
3M:J5 OSOO
3M525 SSDD
3M5 25 DSDD
3M5 25 DSHD .-
39
13 95
1995
9«
1995
U95
22 95
TO 95
1195
2395
14 95
2295
S95
995
22 9S
ll>9h
22 95
10 95
11 95
29 95
DISK STORAGE
0^ Drreiofv (3 5 ) 22 9^-
D<5*F*)40 35" . fi99
tJtthFiioea-sa" . sas
LttarvCase-3 (5.251 99
LjBrarvC^e-5(3S'| 9S
Portel Pad. [3 51 14 99
RIBBONS
Epson FXMXRX-aO bm
BMF'TTjprrtc* 996
PanasoK lOBOSa 999
StatCKuiea .. £99
XWM BQ1 'ueqerdeMC 799
SlWWBCW 7.99
BUSINESS
Casn Dstw^ements JogBTia
D6Masief Orw
Regef« Wcrri 11
Dac Easy Accokmg
DataMa^gef ST
bgu» Ponltoto
Sw«aii ST...... .-
StAfloncST
S/ivia Porter VoJ *
VIP ProiessiDnal
Wbrd Wnier ST
6695
3995
6695
4695
52 95
11995
T32 95
5295
5295
5295
166 95
5295
EDUCATIONAL
Dcomal Oungoofl
Fraction AciKXl
K«Jefama
MatnTam
Math Wzard
Speitef Bee
ftjTigjd [>jdt s Piaygfotnd
Fral Shapes
KdTafc
Read £ flhyme
26 95
26 95
2695
3295
2695
32 95
2695
19 95
295
32 95
26 95
ENTERTAINMENT
Anemgle Rea*lV 329S
Autaduel 3395
CrrSai Cisaes. 1995
Deep Space 3295
Cbbrs & Sense 6695
F^grn Scniato' II 34 95
Guid trf Tiwvra . , 2995
JO>Kl
Pson Chess
39 95
3295
Temple cK Apshol Trtogv
Tomh Franie
WiYie The Pooh
2695
2695
169&
Anc Fox , , ,
, 2795
Arena
BaJanco o( Powef
ftack Cauidiwi
2395
3?95
»fl$
ChampiOrteftp Wreiaing
Dolondof ot the Crcwi
Dungeonmaslef
F-I5 Sinks Eagle
Fits Word
2695
3295
2695
2695
34 95
GalD
Hanwr SinKe tAsscn
He»
32 95
Jet
33 95
Krg cK Chcagcr
KjngsOueal H 0* III
Leader Boari
32 95
3295
2695
MatorMoQon
2695
Phantasie
Phanusiel!
PrbafFMoy
RPV
2695
26 95
2695
SDI
32 95
S*niSe»Mce
269fi
SrtHdi ma Tmre
cf no Falcon
Sui^Ucr ,
SiTOoq .
SuKt Cyda
Unma ill
_ 1995
_ 2995
_ . J695
S696
_ 29 95
.^.. 2e95
-.. 3995
S695
2695
LmumEs
Do^ Em
GFA 5aK ...
ISO fiBcal ..
53 95
53 95
.52 95
£6 95
99.95
119.95
26 95
M^ WiiamsC
Neoctvcne
New TeJ* utgjtfi Ct^emg
BoOi 15 95
Panhrtrta «»
Pvnt^PaKM 4996
PutMwigPHOV 9995
tlMi* »95
Ae^ Arwnaty
M Golefy I or n
DD93S -.-.-
r«rcada
OFA Bftu Cotnpler
IS Tik
MjscSulo
PwettSvEmB
F'nnMaaa Plus
ST Tafc
r*iw Liw
Z-T»T« 5S0
5S9S
. 19.95
. K.95
. 3l3i
59.96
3195
3995
6695
2695
995
3295
.39.95
No surcharge for MasterCard ^ or Visa S
artnnglfifixnialnnXredrt cart - Have number^
porter number anddl«k1olhoP.O.Bo<>a«l Allow UBus.r«s= Days kxche* 10 ctea, MoreyOrae,s:Ca.orte.-,-you«llr™,veano(de,Lrt)« serxln^.«C^^,aP^^^'
Shwns Contr^^ USA - Al Or*™ «« 3%. ..n^m S3 00 HI. AK. Canada add 5%. m„™n, JS.OO, All Char order arS add 15% n™i,um S^I^O JS,^ ^J, L,,^ ^ X
newest Civil War simulation. Rebel
Charge at Cbickamauga, for the Commo-
dore 64, Apple 11, and Atari eight-bit
computers. It uses a refined version of
the game system used in Gettysburg:
The Turning Point. All units are now
brigade size and may be broken down
into smaller units, then built up. Com-
mand Control may be altered by the
player(s), and each turn now represents
two hours rather than one. The entire
battle is recreated in 13 turns. Both
strategic and tactical screen displays are
available; the larger strategic display
shows 40 squares by 20 squares of the
battlefield, while the tactical display
enables the players to zoom in for a
more detailed view. Introductory, inter-
mediate, and advanced versions of the
game are included. Both the Union and
Confederate sides may be managed by
human players, or you can choose the
computer as opponent. Suggested retail
price is $49.95.
Strategic Simulations, 1046 N.
Rengstorff Ave., Mountain Viezv, CA
94043
Circle Reader Service Number 240.
New Text Adventure From
Cosmi Software
Cosmi Software has introduced Delta
Man, a survival simulation featuring re-
alistic survival simulations and 3-D
scrolling graphics.
The scenario: A nuclear holocaust
has reduced Chicago to a smoldering,
poisonous ruin. Having survived be-
cause of your discover)' of a high-tech,
robotic space suit, you pick through the
wreckage to find supplies, weapons,
and fuel. You ward off roaming bands
of genetic mutants while searching for
other surviving humans until you can
escape.
Delia Man is available for the Com-
modore 64 for $19.95.
Cosmi, 415 N. Figueroa, Wilmington,
CA 90744
Circle Reader Service Number 241.
IIGS Clip Art
Clip Art Gallery from Activision offers
more than 600 graphic images for the
Apple IlGS. This database of designs
can be used with Paintworks Plus and
the soon-to-be-released Writer's Choice
elite to design invitations, cards, and
logos, or to add artwork to any docu-
ment. There are 24 categories, includ-
ing business, school, sports, bugs,
gadgets, food, symbols, birds, and vehi-
cles. You can redraw parts of the im-
ages, change the colors and size, add
words, and mix or match images from
the different files.
Suggested retail price for Clip Art
Gallery is $29.95.
Activision, 2350 Bayshore Frontage
Rd., Mountain View, CA 94043
Circle Reader Service Number 242.
New Street Sport Gome
From Epyx
Epyx has announced plans to release
Street Sports Baseball, a unique new
baseball game for the Commodore 64,
Apple 11 series, and IBM PC and
compatibles.
In keeping with the winner-take-
all, neighborhood pick-up game ap-
proach of the Street Sports line, the
game will feature the 52nd Street
Gang — hitters, fielders, and pitchers
from which players can choose their
team. The rules of the game are the
same as those of big-league baseball,
but the rules of the street provide a
special challenge. Players must run and
field around tree stumps and bushes,
and contend with trash can lids, spare
tires, or flattened cardboard boxes.
After you select the members of your
team, you assign positions and decide
on a batting order. Then you control the
pitches, time the swings, and regulate
the field action. You can play against a
friend or the computer using a split-
view screen with perspectives from
above and close up, so you can keep an
eye on the whole field as well as a
specific playing area.
The price of Street Sports Baseball
was unavailable at press time.
Epyx, 600 Galveston Dr., P.O. Box
8020, Redwood City, CA 94063
Circle Reader Service Number 243.
New Civil War Game
Blue Powder Grey Smoke from Garde is
now available for the Commodore 64.
This war game uses strategy and tactics
to simulate actual Civil War combat
along with a zoom-in feature for com-
bat display. All the game mechanics are
joystick controlled with onscreen menus.
Blue Poivder Grey Smoke is also
available for the Apple II series. Retail
price for each version is $49.95.
Garde Games of Distinction, 8 Bishop
Ln., Madison, CT 06443
Circle Reader Service Number 244.
EA Buys Batteries irtciuded
Electronic Arts has purchased the assets,
inventory, contracts, trademarks and
brand names of Batteries Included. All
of Batteries Included's operahons will be
consolidated into the San Mateo offices
of Electronic Arts. The EA customer ser-
vice department will fulfill all requests
for upgrades, warranty replacements,
product inquiries, and promotional of-
fers from Batteries Included customers.
The Batteries Included name will
exist as a separate line of products with-
in EA. Representatives believe the Bat-
teries Included line will benefit from
EA's distribution channels and sales
program.
Circle Reader Service Number 245.
Amiga Math Aquarium
Doug's Math Aquarium (DMA) compiles
expressions for high-speed display on
the Amiga. It uses single-purpose math
programs — like the Mandelbrot set — to
create artlike fractal images on the
screen.
DAM is available for $79.95.
Seven Seas Software, 35 Cape George
Wye, Port Townsend, WA 98368
Circle Reader Service Number 246.
New Stickybear Programs
Two new software packages from the
Stickybear series are designed to help
elementary school kids improve their
math and grammar skills. Stickybear
Parts of Speech contains four drills to
help children ages 8-12 learn the parts
of speech — nouns, pronouns, adjec-
tives, verbs, adverbs, conjunctions,
prepositions, and interjections. Ani-
mated sequences reward users who
choose the correct part of speech from
sentences and paragraphs. The word
lists can be customized by level of diffi-
culty. There's also a print option for
printing out tests.
The Stickybear Word Problems disk
contains hundreds of different math
word problems for children ages 7 and
up. It has adjustable levels of difficulty,
a print option to print out practice prob-
lems, and a report-card option. Colorful
screen graphics reward correct answers.
And teachers and parents can custom-
ize the problems for individualized
math instruction.
Both Stickybear Parts of Speech and
Word Problems are available for the Ap-
ple II series with 48K and DOS 3.3.
Each software package contains
one floppy disk, a Stickybear poster,
user's guide, and Stickybear stickers.
The suggested retail price for each pro-
gram is $39.95.
Weekly Reader Family Software, 245
Long Hill Rd., Middle town, CT 06457
Circle Reader Service Number 247,
120 COMPUni July 198;
COMPUTEi's
Author's Guide
Most of the following suggestions serve to improve
the speed and accuracy of publication. COMPUTE! is
primarily interested in new and timely articles on the
Commodore 64/128, Atari, Apple, IBM PC/PCjr,
Amiga, and Atari ST. We are much more concerned
with the content of an article than with its style, but
articles should be clear and well-explained.
The guidelines below will permit your good ideas
and programs to be more easily edited and published;
1. The upper left corner of the first page should
contain your name, address, telephone number, and
the date of submission.
2. The following information should appear in the
upper right corner of the first page: If your article is
specifically directed to one make of computer, please
state the brand name and, if applicable, the BASIC or
ROM or DOS version(s) involved. In addition, please
indicate the memory requirements of programs.
3. The underlined title of the article should be
placed about Vi of the way down the first page.
4. Following pages should be typed normally, ex-
cept that in the upper right corner there should be an
abbreviation of the title, your last name, and the page
number — for example: Memory Map/Smith/2.
5. All lines within the text of the article must be
double- or triple-spaced, A one-inch margin should be
left at the right, left, top, and bottom of each page. No
words should be divided at the ends of lines. And
please do not right-justify. Leave the lines ragged.
6. Standard typing paper should be used (no eras-
able, onionskin, or other thin paper), and typing
should be on one side of the paper only (upper- and
lowercase).
7. If you are submitting more than one article,
send each one in a separate mailer with its own tape
or disk.
8. Short programs (under 20 lines) can easily be
included within the text. Longer programs should be
separate listings. It is essential that we have a copy of
the program, recorded twice, on a tape or disk. If your
article was written with a word processor, we request
that you include a copy of the text file on the tape or
disk. If you include a copy of your article on disk,
please save the article as plain text, without any spe-
cial formatting characters or control codes. Most word
processors provide an option for saving a document as
plain ASCII text or in unformatted form. Please use
high-quality 10- or 30-minute tapes with the program
recorded on both sides. The tape or disk should be
labeled with your name, the title of the article, and, if
applicable, the BASIC/ROM/DOS version(s). Tapes
are fairly sturdy, but disks need to be enclosed within
plastic or cardboard mailers (available at photography,
stationer}', or computer supply stores). If possible,
programs written in machine language or a compiled
language should include source code (or an annotated
disassembly if the program was written with a ma-
chine language monitor).
9. A good general rule is to spell out the numbers
zero through ten in your article and write higher
numbers as numerals (1024), The exceptions to this
are: Figure 5, Table 3, TAB(4), and so on. Within ordi-
nary text, however, the zero through ten should ap-
pear as words, not numbers. Also, symbols and
abbreviations should not be used within text: Use and
(not &), reference (not ref.), through (not thru).
10. For greater clarity, use all capitals when refer-
ring to keys (RETURN, TAB, ESC, SHIFT), BASIC
words (LIST, RND, GOTO), and three languages
(BASIC, APL, PILOT). Headlines and subheads
should, however, be initial caps only, and emphasized
words are not capitalized. If you wish to emphasize,
underline the word; then it will be italicized during
typesetting.
11. Articles can be of any length — from a single-
line routine to a multiple-issue series. The average ar-
ticle is about four to eight double-spaced, typed pages.
12. We do not consider articles which are submit-
ted simultaneously to other publishers. If you wish to
send an article to another magazine for consideration,
please do not subnnit it to us.
13. COMPUTE! pays between $70 and $800 for
published articles. In general, the rate reflects the
length and quality of the article. Payment is made
upon acceptance. Following submission (to Editorial
Department, COMPUTE! Magazine, P.O. Box 5406,
Greensboro, NC 27403), it will take from four to eight
weeks for us to reply. If your work is accepted, you
will be notified by a letter which will include a con-
tract for you to sign and return. Rejected manuscripts
are returned to authors who enclose a self-addressed,
stamped envelope.
14. If your article is accepted and you have since
made improvements to the program, please submit an
entirely new tape or disk and a new copy of the arti-
cle reflecting the update. We cannot easily make revi-
sions to programs and articles. It is necessary that you
send the revised version as if it were a new submis-
sion entirely, but be sure to indicate that your submis-
sion is a revised version by writing Revision on the
envelope and the article.
15. COMPUTE! does not accept unsolicited product
reviews. If you are interested in serving on our panel
of reviewers, contact the Features Editor for details.
July 1987 COMPUTEI 121
COMPUTEI's Guide
To Typing In Programs
Computers are prerise — type the pro-
gram exactly as listed, including neces-
sary punctuation and symbols, except
for special characters noted below. We
have provided a special listing conven-
tion as wfell as a program to check your
typing — "The Automatic Proofreader,"
Programs for the IBM, TI-99/4A,
and Atari ST models should be typed
exactly as listed; no special characters
are used. Programs for Commodore,
Apple, and Atari 400/800/XL/XE
computers may contain some hard-to-
read special characters, so we have a
listing system that indicates these con-
trol characters. You will find these
Commodore and Atari characters in
curly braces; do not type the braces. For
example, {CLEAR} or {CLR} instructs
you to insert the symbol which clears
the screen on the Atari or Commodore
machines. A complete list of these sym-
bols is shown in the tables belov^f. For
Commodore, Apple, and Atari, a single
symbol by itself within curly braces is
usually a control key or graphics key. If
you see (A}, hold down the CONTROL
key and press A. This will produce a
reverse video character on the Commo-
dore (in quote mode), a graphics char-
acter on the Atari, and an invisible
control character on the Apple.
Graphics characters entered with
the Commodore logo key are enclosed
in a special bracket: f<A>^. In this case,
you would hold down the Commodore
logo key as you type A. Our Commo-
dore listings are in uppercase, so shifted
symbols are underlined. A graphics
heart symbol (SHIFT-S) would be listed
as S. One exception is {SHIFT-
SPACE}. When you see this, hold down
SHIFT and press the space bar. If a
number precedes a symbol, such as {5
RIGHT}, {6 S}, or [<8 Q>j, you would
enter five cursor rights, six shifted S's,
or eight Commodore-Q's. On the Atari,
inverse characters (white on black)
should be entered with the inverse video
Atari 400/800/XL/XE
When you see Type
{CLEAR} ESC
{UP> ESC
{DOWN} ESC
{LEFT} ESC
{RIGHT} ESC
{BACK SJ ESC
{DELETE} ESC
{INSERT} ESC
{DEL LINE} ESC
{INS LINE} ESC
{TAB} ESC
{CLR TAB} ESC
{SET TAB} ESC
{BELL} ESC
{ESC} ESC
SHIFT <
CTRL -
CTRL =
CTRL +
CTRL «
DELETE
CTRL DELETE
CTRL INSERT
SHIFT DELETE
SHIFT INSERT
TAB
CTRL TAB
SHIFT TAB
CTRL 2
ESC
See
K
•r
4-
«-
-»
U
U
E3
a
B
E3
t3
Clear Screen
Cursor Up
Cursor Down
Cursor Le-ft
Cursor Right
Backspace
Delete character
Insert character
Delete line
Insert line
TAB key
Clear tab
Set tab stop
Ring buzzer
ESCape key
Commodore PET/CBM/VIC/64/1 28/1 6/+4
WhenKfau
Read:
{CLRt
{HOME}
{UP}
{DOWN}
{LEFT}
{RIGHT}
{RVS}
{OFF!
{BLK}
{VVHT)
{RED)
{CYN}
{PUR}
{GRN}
{BlU}
{YEL)
Press:
See:
SHIFT
Ft CRSR i I 53
SHIFT [N—CRSR-i.
«-CRSR— I
u
CTRL
\ CTRL
i 1 i
CTTIL 2 1
CTRL
3 I
CTRL
4 ;
CTRL
5
CTRL
6
CTRL
7
« i
CTRL
m
E3
Q
Si
When Ybu
Read:
gig
1 6i
§ S§
{ n }
{ F2 !
{ B )
( H }
{ FS }
{ F6 )
i F7 }
\ F8 }
Press:
C0MMODOgE|[T|
[commodore I \T\
commodore | [t]
commodore] [~4~|
See:
Ei3
commodokeI [T] C
■I
a
■■
[commodore] [7]
I commodore] [T]
COMMODORE I [T]
»
SHIFT
fl
0
SHIFT
a
fs
SHIFT
fs
17
SHIFT
f7
t
*
Jj^
122 COMPUTEI July 1987
key (Atari logo key on 400/800 models).
Whenever more than two spaces
appear in a row, they are listed in a
special format. For example, {6
SPACES} means press the space bar six
times. Our Commodore listings never
leave a single space at the end of a line,
instead moving it to the next printed
line as {SPACE).
Amiga program listings contain
only one special character, the left ar-
row (-) symbol. This character marks
the end of each program line. Wherever
you see a left arrow, press RETURN or
move the cursor off the line to enter
that line into memory. Don't try to type
in the left arrow symbol; it's there only
as a marker to indicate where each pro-
gram line ends.
The Automatic Proofreader
Type in the appropriate program listed
below, then save it for future use. The
Commodore Proofreader works on the
Commodore 128, 64, Plus/4, 16, and
VIC-20. Don't omit any lines, even if
they contain unfamiliar commands or
you think they don't apply to your com-
puter. When you run the program, it
installs a machine language program in
memory and erases its BASIC portion
automatically (so be sure to save sever-
al copies before running the program
for the first time). If you're using a
Commodore 128, Plus/4 or 16, do not
use any GRAPHIC commands while
the Proofreader is active. You should
disable the Commodore Proofreader
before running any other program. To
do this, either turn the computer off and
on or enter SYS 64738 (for the 64), SYS
65341 (128), SYS 64802 (VIC-20), or
SYS 65526 (Plus/4 or 16). To reenable
the Proofreader, reload the program
and run it as usual. Unhke the original
VIC/ 64 Proofreader, this version works
the same with disk or tape.
On the Atari, run the Proofreader
to activate it (the Proofreader remains
active in memory as a machine lan-
guage program); you must then enter
NEW to erase the BASIC loader. Press-
ing SYSTEM RESET deactivates the
Atari Proofreader; enter PRINT
USR(1536) to reenable it.
The Apple Proofreader erases the
BASIC portion of itself after you run it,
leaving only the machine language por-
tion in memory. It works with either
DOS 3.3 or ProDOS, Disable the Apple
Proofreader by pressing CTRL-RESET
before running another BASIC program.
The IBM Proofreader is a BASIC
program that simulates the IBM BASIC
line editor, letting you enter, edit, list,
save, and load programs that you type.
Type RUN to activate. Be sure to leave
Caps Lock on, except when typing low-
ercase characters.
Once the Proofreader is active, try
typing in a line. As soon as you press
RETURN, either a hexadecimal number
(on the Apple) cr a pair of letters (on the
Commodore, Atari, or IBM) appears.
The number or pair of letters is called a
checksum.
Compare the value displayed on
the screen by the Proofreader with the
checksum printed in the program list-
ing in the magazine. The checksum is
given to the left of each line number.
Just type in the program a line at a time
(without the printed checksum), press
RETURN or Enter, and compare the
checksums. If they match, go on to the
next line. If not, check your typing;
you've made a mistake. Because of the
checksum method used, do not type
abbreviations, such as ? for PRINT. On
the Atari and Apple Proofreaders,
spaces are not counted as part of the
checksum, so be sure you type the right
number of spaces between quote
marks. The Atari Proofreader does not
check to see that you've typed the char-
acters in the right order, so if characters
are transposed, the checksum still
matches the listing. The Commodore
Proofreader catches transposition er-
rors and ignores spaces unless they're
enclosed in quotation marks. The IBM
Proofreader detects errors in spacing
and transposition.
IBM Proofreader Commands
Since the IBM Proofreader replaces the
computer's normal BASIC line editor, it
has to include many of the direct-mode
IBM BASIC commands. The syntax is
identical to IBM BASIC. Commands
simulated are LIST, LLIST, NEW,
FILES, SAVE, and LOAD. When listing
your program, press any key (except
Ctrl-Break) to stop the listing. If you
enter NEW, the Proofreader prompts
you to press Y to be especially sure you
mean yes.
Two new commands are BASIC
and CHECK. BASIC exits the Proof-
reader back to IBM BASIC, leaving the
Proofreader in memory. CHECK works
just like LIST, but shows the checksums
along with the listing. After you have
typed in a program, save it to disk.
Then exit the Proofreader with the
BASIC command, and load the pro-
gram as usual (this replaces the Proof-
reader in memory). You can now run
the program, but you may want to re-
save it to disk. This will shorten it on
disk and make it load faster, but it can
no longer be edited with the Proofread-
er. If you want to convert an existing
BASIC program to Proofreader format,
save it to disk with SAVE "filename", A.
Program 1: Atari
Proofreader
By Charles Brannon
100, BRflPHICS 0
110 FOR 1=1536 TO 1700:REA
D A:PDKE I , fi s CK=CK+A: N
EXT I
120 IF CKO19072 THEN ? "E
rror in DATA Statement
s. Ctieck Typing. ":END
Program 2: IBM Proofreader
By Charles Brannon
10 'Automatic Prop-f reader Vers
ion 3.0 (Lines 205,206 adde
d/190 deleted/470,490 chang
ed from V2.0)
100 DIH L» (500) ,LNUH( 500) : COLO
R 0,7, 7s KEY OFF:CLS:MAX=0:
LNUM(0) =65536!
110 ON ERROR GOTO 120:KEY 15, C
HR»C4>+CHR«(70):ON KEY (15)
BOSUB 640: KEY (15> ON: SOT
0 130
120 RESUME 130
130 DEF SES=8.H40:W=PEEK{&H4A)
140 ON ERROR BDTO 650: PRINT: PR
INT"PrQO-freader Ready. "
150 LINE INPUT L*:Y=CSRLIN-INT
(LEN(Lt)/W)-l! LOCATE Y, 1
160 DEF SE6=0:POKE 1050,30:POK
E 1052, 34: POKE 1054,0: POKE
1053, 79: POKE 1056, 13: POKE
1057, 28: LINE INPUT L*:DEF
SEE: IF L»="" THEN 150
170 IF LEFT*(L», 1)=" " THEN L4
=MID*(L»,2)!S0TQ 170
July 1967 COMPUTEI 123
180 IF VAL(LEFT*(L4,2) }=0 AND
MID* (L», 3,1)=" " THEN L*=M
I0»(L*,4)
200 IF flSC(L*)>57 THEN 260 'no
line number, therefore ca
mmand
205 BL=IN5TR(L«, " "):IF BL=0 T
HEN BL*=L»:GaTD 206 ELSE B
L»=LEFT$(L*,BL-1)
206 LNUM~VAL(BU*):TEXT*=MIDt<L
», LEN CSTR* (LNUM) ) +1 )
210 IF TEXTS="" THEN GDSUB 540
! IF LNUM=LNUM(P) THEN BOSU
B 560: GOTO 150 ELSE 150
220 CKSUri=0:FOR 1 = 1 TO LENCLt)
i CKSUM= (CKSUM+ASC (MI D« (L«,
I))*n AND 255: NEXT: LOCATE
Y , 1 : PR I NT CHR» ( 65+CKSUM/ 1
6)+CHR*(65+(CKSUM AND 15))
+" "+L»
230 GDSUB 540: IF LNUM(P)=LNUM
THEN L»{P)=TEXT»:GOT0 150
'replace line
240 GDSUB 580: SOTO 150 'insert
the line
260 TEXT«="":FDR 1=1 TO LEN(L*
):A=ASC(MID«(L«,I) );TEXT*=
TEXT»+CHR*(A+32«(A>96 AND
A< 123)): NEXT
270 DELII1ITER=INSTR(TEXT*," ")
SC0MMAND*=TEXT«;ARB»="": IF
DELIMITER THEN CQMMAND*=L
EFT* (TEXTS, DELIMITER-1 ) : AR
B»=MID«(TEXT*,DELIMITER+1)
ELSE DELIMITER=INSTR(TEXT
t,CHR*(34)):IF DEILIMITER T
HEN COMMAND»=LEFT»(TEXT*,D
ELIMITER-1 ) s ARG»=MID« (TEXT
», DELIMITER)
2B0 IF COMMAND«<>"LIST" THEN 4
10
290 OPEN "scrn:" FOR OUTPUT AS
ttl
300 IF ARG»="" THEN FIRST=0:P=
MAX-IsGDTD 340
310 DELIMITER=INSTR(AR8S,"-"):
IF DELIMITER=0 THEN LNUM=V
AL(ARG«):GOSUB 540:FIRST=P
:QOTO 340
320 FIRST=VAL(LEFT*(AR8t,DELIH
ITER) ) : LAST=VAL (MID* ( ARG«,
DELIMITER+1) )
330 LNUM=FIRST:GOSUB 540: FIRST
=P : LNUM=L AST ! GDSUB 540 : I F
P=0 THEN P=MAX-1
340 FOR X=FIRST TO P:N*=MID»(S
TR*(LNUM(X) ) ,2)+" "
350 IF CKFLAB=0 THEN A*="":60T
0 370
360 CKSUM=0:A»=N»+L«(X) :FOR 1=
1 TO LEN(A«) :CKSUM=tCKSUM+
ASC(MID*(A*, I) )«I) AND 255
: NEX T : A»=CHR* ( 65+CKSUM/ 1 6 )
+CHR*(65+(CKSUM AND 15))+"
370 PRINT »i,A«+N»+L*tX)
3B0 IF INKEYtO"" THEN X=P
390 NEXT : CLOSE #1:CKFLAG=0
400 GOTO 130
410 IF COMMAND*="LLIST'- THEN 0
PEN "Iptl:" FOR OUTPUT AS
*1:GDT0 300
420 IF COMMAND«-"CHECK" THEN C
t<FLA6=l:GOT0 290
430 IF CDMMAND*<>"SAVE" THEN 4
50
440 GOSUB 600: OPEN AR6* FOR QU
TPUT AS #l:AR6*="":GaT0 30
0
450 IF COMMAND*<>"LDAD" THEN 4
90
460 GOSUB 600: OPEN ARG* FDR IN
PUT AS #l!MAX=0sP=0
470 WHILE NOT EaF(l):LINE INPU
T #1,L»;BL=INBTR{L*, " "):B
L»=LEFT*(L»,BL-1) !LNUM(P)=
VAL(BL») :L»(P)=MIDt(L*,LEN
(3TR*(VAL(BL») ) )+l):P=P+l:
WEND
480 MAX=P: CLOSE «1:BDT0 130
490 IF CDMMAND*="NEW" THEN INP
UT "Erase program - Are yo
u sure"; L*: IF LEFT*(L*,1)=
"V" OR LeFT»(L*, 1)="Y" THE
N MAX=»0! LNUM (0) -65536 !: GOT
O 130! ELSE 130
500 IF C0MMAND*=" BASIC" THEN C
OLDR 7, 0,0: ON ERROR GOTO 0
:CLS:ENO
510 IF CDMMAND*<>" FILES" THEN
520
515 IF AR6i="" THEN ARGS="fl! "
ELSE SEL=l! GDSUB 600
517 FILES ARG*: GOTO 130
520 PRINT"Syntax error" iSDTO 1
30
540 P=0:SgHILE LNUM>LNUM(P) AND
P<MAX: P=P+1 : WEND: RETURN
560 MAX=MAX-1:F0R X=P TO MAX:L
NUM ( X ) =LNUM ( X+1 ) : L» ( X ) =L* (
X+1): NEXT: RETURN
580 MAX=MAX+1:F0R X=MflX TO P+1
STEP -1:LNUM(X)=LNUM(X-1)
:L*(X)=L«(X-1):NEXT:L*(P)=
TEXT*: LNUM (P ) =LNUM: RETURN
600 IF LEFT* CARS*, 1)<>CHR*( 34)
THEN 520 ELSE ARG*=MID*(A
RG»,2)
610 IF RIGHT*(ARe*, 1)=CHR*(34)
THEN ARG*=LEFT*(ARS*,LEN(
AR6«)-1)
620 IF SEL=0 AND INSTR (ARG*, " .
")=0 THEN ARe*=ARB»+".BAS"
630 SeL=»0: RETURN
640 CLOSE #l:CKFLAG=0:PRINT"St
opped. ": RETURN 150
650 PRINT "Error »"; ERR: RESUME
150
Program 3: Commodore
Proofreader
By Philip Nelson, Assistant Editor
10 VEC=PEEK(772)+2 56*PEEK(77 3)
:LO=43;HI=44
20 PRINT "AUTOMATIC PROOFREADE
R FOR ";:IF VEC=42364 THEN
{SPACE] PRINT "C-64"
30 IF VEC=50556 THEN PRINT "VI
C-20"
40 IF VEC=35158 THEN GRAPHIC C
LR: PRINT "PLUS/4 & 16"
50 IF VEC=17165 THEN LO=4S:HI=
46:GRAPKIC CLR: PRINT "128"
60 SA=(PEEK(L0)+256*PEEK(HI))+
6 : ADR=SA
70 FOR J=0 TO 166:READ BYT : POK
E ADR,aYT:ADR=ADR+l!CHK=CHK
+BYT:NEXT
80 IF CHKO20570 THEN PRINT "*
ERROR* CHECK TYPING IN DATA
STATEMENTS " : END
90 FOR J=l TO 5:READ RF,LF,HF:
RS=SA+RF:HB=INT(RS/256) :LB=
RS-(256*HB)
100 CHK=CHK+RP+LF+HFsPOKE SA+L
F,LB:POKE SA+HF, HB :NEXT
110 IF CHKO 22054 THEN PRINT "
* ERROR* RELOAD PROGRAM AND
{ SPACE jCHECK FINAL LINE": EN
D
120 POKE SA+149, PEEK ( 772 ) 1 POKE
SA+150,PEEK(773)
130 IF VEC=1716 5 THEN POKE SA+
14,22: POKE SA+IB, 23 :POKESA+
29,224:POKESA+139,224
140 PRINT CHR5{147) rCHR?(17);"
PROOFREADER ACTIVE": SYS SA
150 POKE HI,PEEK(HI)+1:P0KE (P
EEK(LO)+256*PEEK(HI) ) -1 ,0 iN
EW
160 DATA 120,169,73,141,4,3,16
9,3,141,5,3
170 DATA 88,96,165,20,133,167,
165,21,133,168,169
180 DATA 0,141,0,255,162,31,18
1,199,157,227,3
190 DATA 202,16,248,169,19,32,
210,255,169,18,32
200 DATA 210,255,160,0,132,180
,132,176,136,230,180
210 DATA 200,185,0,2,240,46,20
1,34,203,8,72
220 DATA 165,176,73,255,133,17
6,104,72,201,32,208
230 DATA 7,165,176,208,3,104,2
08,226,104,166,180
240 DATA 24,165,167,121,0,2,13
3,167,165,168,105
250 DATA 0,133,168,202,208,239
,240,202,165,167,69
260 DATA 168,72,41,15,168,185,
211,3,32,210,255
270 DATA 104,74,74,74,74,168,1
85,211,3,32,210
280 DATA 255,162,31,189,227,3,
149,199,202,16,248
290 DATA 169,146,32,210,255,76
,86,137,65,66,67
300 DATA 68,69,70,71,72,74,75,
77,80,91,82,83,88
310 DATA 13,2,7,167,31,32,151,
116,117,151,128,129,167,136
,137
Program 4: Apple
Proofreader
By Tim Victor, Editorial Programmer
10 C = 0; FOR I = 768 TO 768 +
68: READ AsC = C + A: POKE I
,A: NEXT
20 IF C < > 7258 THEN PRINT "ER
RDR IN PROOFREADER DATA STAT
EMENTS": END
30 IF PEEK (190 * 256) < > 76 T
HEN POKE 56,0: POKE 57,3: CA
LL 1002: GOTO 50
40 PRINT CHR* (4) ; "1N#A*300"
50 POKE 34,0: HOME : POKE 34,1:
VTAB 2: PRINT "PROOFREADER
INSTALLED"
60 NEU
100 DATA 216,32,27,253,201,141
110 DATA 208,60,138,72,169,0
120 DATA 72,189,255,1,201,160
130 DATA 240,8,104,10,125,255
140 DATA 1,105,0,72,202,208
150 DATA 238,104,170,41,15,9
160 DATA 48,201,58,144,2,233
170 DATA 57,141,1,4,138,74
180 DATA 74,74,74,41,15,9
190 DATA 48,201,58,144,2,233
200 DATA 57,141,0,4,104,170
210 DATA 169,141,96 © .
12d COMPUTEI July 1967
WLM ^^ Machine Language Entry Program
I w llii.#V For Commodore 64 And 1 28
Ottis Cowper, Technical Editor
"MIX" is a labor-saving utility thai allows
almost fail-safe entry of machine language
programs. Included are versions for the
Commodore 64 and 128.
Type in and save some copies of which-
ever version of MLX is appropriate for
your computer (you'll want to use it to
enter future ML programs from COM-
PUTE!). Program 1 is for the Commodore
64, and Program 2 is for the 128 (128
MLX can also be used to enter Commo-
dore 64 ML programs for use in 64
mode). When you're ready to enter an
ML program, load and run MLX. It asks
you for a starting address and an ending
address. These addresses appear in the
article accompanying the MLX-format
program listing you're typing.
If you're unfamiliar with machine
language, the addresses (and all other
values you enter in MLX) may appear
strange. Instead of the usual decimal
numbers you're accustomed to, these
numbers are in hexadecimal — a base 16
numbering system commonly used by
ML programmers. Hexadecimal — hex
for short — includes the numerals 0-9
and the letters A-F. But don't worry —
even if you know nothing about ML or
hex, you should have no trouble using
MLX.
After you enter the starting and end-
ing addresses, you'U be offered the op-
tion of clearing the workspace. Choose
this option if you're starting to enter a
new listing. If you're continuing a listing
that's partially typed from a previous
session, don't choose this option.
A functions menu will appear. The
first option in the menu is ENTER
DATA. If you're just starting to type in a
program, pick this. Press the E key, and
type the first number in the first line of
die program listing. If you've already
typed in part of a program, type the line
number where you left off typing at the
end of the previous session (be sure to
load the partially completed program
before you resume entry). In any case,
make sure the address you enter corre-
sponds to the address of a line in the
teting you are entering. Otherwise, you'll
be unable to enter the data correctly. If
you pressed E by mistake, you can return
to the command menu by pressing RE-
TURN alone when asked for the address.
{You can get back to the menu from most
options by pressing RETURN with no
other input.)
Entering A Listing
Once you're in Enter mode, MLX prints
the address for each program line for
you. You then type in all nine numbers
on that line, beginning with the first two-
digit number after the colon (:). Each line
represents eight data bytes and a check-
sum. Although an MLX-format listing
appears similar to the "hex dump" list-
ings from a machine language monitor
program, the extra checksum number on
the end allows MLX to check your typ-
ing, (Commodore 128 users can enter
the data from an MLX listing using the
built-in monitor if the rightmost column
of data is omitted, but we recommend
against it. It's much easier to let MLX do
the proofreading and error checking for
vou.)
Figure 1 : 64 MLX Keypad
7
8
9
0
4
5
6
p
U
I
O
p
1
2
3
E
J
K
L
:
A
B
c
D
M
'
•
/
\
^ Space
Figure 2: 128 MLX Keypad
A
(Fl>
B
(F3)
C
(P5)
D
(FT)
7
8
9
E
(+)
4
5
6
F
(-)
1
2
3
E
N
T
E
R
0
•
When you enter a line, MLX recal-
culates the checksum from the eight
bytes and the address and compares
this value to the number from the ninth
column. If the values match, you'll hear
a bell tone, the data will be added to the
workspace area, and the prompt for the
next line of data will appear. But if MLX
detects a typing error, you'll hear a low
buzz and see an error message. The line
will then be redisplayed for editing.
Invatid Characters Banned
Only a few keys are active while you're
entering data, so you may have to un-
learn some habits. You do not type
spaces between the columns; MLX
automatically inserts these for you. You
do. not press RETURN after typing the
last number in a line; MLX automatical-
ly enters and checks the line after you
type the last digit.
Only the numerals 0-9 and the
letters A-F can be typed in. If you press
any other key (with some exceptions
noted below), you'll hear a warning
buzz. To simplify typing, 128 MLX re-
defines the function keys and -I- and —
keys on the numeric keypad so that you
can enter data one-handed. In either
case, the keypad is active only while
entering data. Addresses must be en-
tered with the normal letter and num-
ber keys. The figures below show the
keypad configurations for each version.
MLX checks for transposed charac-
ters. If you're supposed to type in AO
and instead enter OA, MLX will catch
your mistake. There is one error that
can slip past MLX; Because of the
checksum formula used, MLX won't
notice if you accidentally type FF in
place of 00, and vice versa. And there's
a very slim chance that you could gar-
ble a line and sfill end up with a combi-
nation of characters that adds up to the
proper checksum. However, these mis-
takes should not occur if you take rea-
sonable care while entering data.
Editing Features
To correct typing mistakes before fin-
ishing a line, use the INST/DEL key to
delete the character to the left of the
cursor. (The cursor-left key also de-
letes.) If you mess up a line really badly,
press CLR/HOME to start the line over.
The RETURN key is also active, but
only before any data is typed on a line.
Pressing RETURN at this point returns
you to the command menu. After you
July 1967 COMPUTEl 125
type a character of data, MLX disables
RETURN until the cursor returns to the
start of a line. Remember, you can press
CLR/HOME to quickly get to a line
number prompt.
More editing features are available
when correcting lines in which MLX
has detected an error. To make correc-
tions in a line that MLX has redisplayed
for editing, compare the line on the
screen with the one printed in the list-
ing, then move the cursor to the mis-
take and type the correct key. The
cursor left and right keys provide the
normal cursor controls. {The INST/
DEL key now works as an alternative
cursor-left key.) You cannot move left
beyond the first character in the line. If
you try to move beyond the rightmost
character, you'll reenter the line. Dur-
ing editing, RETURN is active; pressing
it tells MLX to recheck the line. You can
press the CLR/HOME key to clear the
entire line if you want to start from
scratch, or if you want to get to a line
number prompt to use RETURN to get
back to the menu.
Display Data
The second menu choice, DISPLAY
DATA, examines memory and shows
the contents in the same format as the
program listing (including the check-
sum). When you press D, MLX asks you
for a starting address. Be sure that the
starting address you give corresponds
to a line number in the listing. Other-
wise, the checksum display will be
meaningless. MLX displays program
lines untU it reaches the end of the
program, at which point the menu is
redisplayed. You can pause the display
by pressing the space bar. (MLX finish-
es printing the current line before halt-
ing.) Press space again to restart the
display. To break out of the display and
get back to the menu before the ending
address is reached, press RETURN.
Other Menu Options
Two more menu selections let you save
programs and load them back into the
computer. These are SAVE FILE and
LOAD FILE; their operation is quite
straightforward. When you press S or L,
MLX asks you for the filename. You'll
then be asked to press either D or T to
select disk or tape.
You'll notice the disk drive starting
and stopping several times during a
load or save (save only for the 128
version). Don't panic; this is normal
behavior. MLX opens and reads from or
writes to the file instead of using the
usual LOAD and SAVE commands
(128 MLX makes use of BLOAD). Disk
users should also note that the drive
prefix 0: is automatically added to the
filename (line 750 in 64 MLX), so this
should 7iot be included when entering
the name. This also precludes the use of
@ for Save-with-Replace, so remember
to give each version you save a different
name. The 128 version makes up for
this by giving you the option of scratch-
ing the existing file if you want to reuse
a filename.
Remember that MLX saves the en-
tire workspace area from the starting
address to the ending address, so the
save or load may take longer than you
might expect if you've entered only a
small amount of data from a long list-
ing. When saving a partially completed
listing, make sure to note the address
where you stopped typing so you'll
know where to resume entry when you
reload.
MLX reports the standard disk or
tape error messages if any problems are
detected during the save or load. (Tape
users should bear in mind that Commo-
dore computers are never able to detect
errors during a save to tape.) MLX also
has three special load error messages:
INCORRECT STARTING ADDRESS,
which means the file you're trying to
load does not have the starting address
you specified when you ran MLX;
LOAD ENDED AT address, which
means the file you're trying to load
ends before the ending address you
specified when you started MLX; and
TRUNCATED AT ENDING AD-
DRESS, which means the file you're
trying to load extends beyond the end-
ing address you specified when you
started MLX. If you see one of these
messages and feel certain that you've
loaded the right file, exit and rerun
MLX, being careful to enter the correct
starting and ending addresses.
The 128 version also has a CATA-
LOG DISK option so you can view the
contents of the disk directory before
saving or loading.
The QUIT menu option has the
obvious effect — it stops MLX and en-
ters BASIC. The RUN/STOP key is dis-
abled, so the Q option lets you exit the
program without turning off the com-
puter. (Of course, RUN/STOP-RES-
TORE also gets you out.) You'll be
asked for verification; press Y to exit to
BASIC, or any other key to return to the
menu. After quitting, you can type
RUN again and reenter MLX without
losing your data, as long as you don't
use the clear workspace option.
The Finished Product
When you've finished typing all the
data for an ML program and saved your
work, you're ready to see the results.
The instructions for loading and using
the finished product vary from program
to program. Some ML programs are
designed to be loaded and run like
BASIC programs, so all you need to
type is LOAD "filename",8 for disk
(DLOAD '■filename" on the 128) or
LOAD "filename" for tape, and then
RUN. Such programs will usually have
a starting address of 0801 for the 64 or
ICOl for the 128. Other programs must
be reloaded to specific addresses with a
command such as LOAD "file-
name",B,l for disk (BLOAD "filename"
on the 128) or LOAD "filename", I, I for
tape, then started with a SYS to a partic-
ular memory address. On the Commo-
dore 64, the most common starting
address for such programs is 49152,
which corresponds to MLX address
COOO. In either case, you should always
refer to the article which accompanies
the ML listing for information on load-
ing and running the program.
An Ounce Of Prevention
By the time you finish typing in the data
for a long ML program, you may have
several hours invested in the project.
Don't take chances — use our "Auto-
matic Proofreader" to type the new
MLX, and then test your copy thorough-
ly before first using it to enter any sig-
nificant amount of data. Make sure all
the menu options work as they should.
Enter fragments of the program starting
at several different addresses, then use
the Display opHon to verify that the
data has been entered correctly. And be
sure to test the Save and Load options
several times to insure that you can
recall your work from disk or tape.
Don't let a simple typing error in the
new MLX cost you several nights of
hard work.
Program 1: MLX For
Commodore 64
SS 10 REM VERSION 1.1: LINES 8
30,950 MODIFIED, LINES 4
85-487 ADDED
POKE 56,50:CLR:DIM IN? ,
I,J,A,B,A$,B$,A(7),N$
C4=48 :C6=16 :C7=7 : Z2=2 : Z
4=254:Z5=25 5:Z6=256:Z7=
127
FA=PEEK(45)+Z6*PEEK(46)
:BS=PEEK(55)+Z6*PEEK{56
) :H5="0123456789ABCDEF"
R$=CHR?(13) :L5=" (LEFT)"
:S$=" ":D$=CHR$(20):Z5=
CHR$(0) :T$="(13 RIGHT)"
GQ 140 SD=54272:FOR I=SD TO SD
-H23;POKE 1,0 :NEXT: POKE
(SPACE}SD+24,1S:P0KE 78
8,52
FC 150 PRIKT"(CLR}"CHR$(142)CH
R5(8):POKE 53280, 15:POK
E 53281,15
EJ 160 PRINT T5" (RED}{RVS}
[2 SPACES )g8 @1
[2 SPACES }"SPC( 28)"
[2 SPACES) (OFF ilBLU J ML
X II (RED) (RVS)
(2 SPACES) "SPC( 28)"
[12 SPACES] (BLU!"
FR 170 PRINT" (3 DOWN]
(3 SPACES) COHPUTEI 'S HA
EK
100
DM
110
CJ
120
SB
130
126 COMPUTEl July 1987
CHINE LANGUAGE EDITOR
FK
480
IF ( A5 > "/ " ANDA? < " : " ) OR ( A
FP
730
GET A$:IF A?="T"THEN PR
t3 DOWN]"
?>"@"ANDA?<"G")THEN540
INT "T( DOWN ) " :GOToa8B
JB 180
PRINT" fBLK] STARTING ADD
GS
485
A=-(A$="M")-2*{A$=",")-
HQ
740
IF A?<>"D"THEN730
RESsE4i" r :GOSUB300 :SA=A
3*(A?=".")-4*{A5="/")-5
HH
750
PRINT "D[ DOWN ) " :0PEK1 5 , 8
D:GOSUB1040:IF F THEK18
*(A5="J")-6*(A5="K")
,15, "10: ":B=EA-SA:IN$="
0
FX
486
A=A-7* (A?="L ■' )-8* ( A5 = " :
0:" + IN?:IF OP THE1S810
GF 190
PRINT " f BLK 1 ( 2 SPACES ) EN
DING ADDRESSg4§"; !GOSUB
")-9*<A$="U" )-10*{A$="I
")-ll*(A?="0")-12*(A?="
SQ
760
OPEN 1,8,8,IN?+",P,W":G
OSUB860:IF A THEN220
300:EA=AD:GOSUB1030:IF
p..)
FJ
770
AH=INT(SA/256) :AL=SA-(A
{SPACE}F THEN190
CM
487
A=A-13*(A$=S$):IF A THE
H*256):PRIKT#1,CHR?(AL}
KR 200
INPUT" {3 DOWN} ( BLK 1 CLE A
N A$=M1D?("ABCD123E456F
;CHRS(AH);
R WORKSPACE CY/N]i4|";A
0",A, l):GOTO 540
PE
780
FOR 1=0 TO B:PR1NT#1,CH
?:IF LEFT5(A5,1)<>"Y"TH
MP
490
IF A$=R? AND((I=0)AND(J
R?(PEEK(BS+I)) ; :IF ST T
EN220
=1)0R F)THEN PRINT B? ; :
HEN800
PG 210
PRINT" [2 DOWN} (BLU] WORK
J=2:NEXT:I=24:GOTO550
FC
790
NEXT:CLOSE1:CLOSE1S:GOT
ING ...";: FORI=BS TO BS+
KC
500
IF A5="[H0ME}" THEN PRI
0940
EA-SA+7:P0KE I,0:NEXT:P
NT B?:J=2:SEXT;I=24:NEX
GS
800
GOSUB1060:PRINT"[DOWN}
RI NT "DONE"
T:F=0:GOTO440
[BLK)ERROR DURING SAVE:
DR 220
PRINTTAB(10) "{2 DOWN}
MX
510
IF (A$=" [RIGHT) ")ANDF TH
E43 " :GOSUB860 :GOTO220
{ BLK ) ( RVS } MLX COMMAND
ENPRINT B?LS ; :GOTO540
HA
810
OPEN 1,B,8,IN$+",P,R":G
(SPACE) MENU {D0WN}E43":
GK
520
IF A$<>L? AND A$<>D5 OR
OSUB860:IF A THEN220
PRINT T$"(RVS}E{0FF)NTE
((I=0)AND(J=1))THEN GOS
GE
820
GET# 1 , A$, B? !AD=ASC ( A?+Z
R DATA"
UB1060:GOTO470
?)+256*ASC(B$+25) :IF AD
BD 230
PRINT T$"[RVS}D(0FF)ISP
HG
530
A5=L?+S$+L?: PRINT B$L5 r
<>SA THEN F=1:GOTO850
LAY DATA" SPRINT T$ "
:J=2-J:IF J THEN PRINT
RX
830
FOR 1=0 TO B:GET#1,A?:P
{RVS}L(0FF}0AD FILE"
[ SPACE) L?; : 1=1-3
OKE BS+I,ASC(A$+Z$) :IF(
JS 240
PRINT TS"(RVS)S{0FF}AVE
F1LE":PRINT T$"iRVS}Q
QS
540
PRINT A?;:NEXT J: PRINT
[ SPACE )S?;
I<>B)AND ST THEN F=2iAD
=l!l=B
{0FF)UITf2 DOWN) {BLK}"
PM
550
NEXT I:PRINT!PRINT"(UPj
FA
840
NEXTsIP ST<>64 THEN F=3
JH 250
GET A$:IF A?=N5 THEN250
(5 RIGHT) ";:INPUT#3, IN?
FQ
850
CLOSEl !CLOSE15:0N ABS ( P
HK 260
A«0:FOR 1=1 TO 5: IP A$=
:IF IN5=N? THEN CL0SE3 :
>0)+l GOTO960,970
MID$("EDLSQ",I,1)THEN A
GOTO220
SA
860
INPUT#15,A,A?:IF A THEN
=1:1=5
QC
560
FOR I»l TO 25 STEPS :B5=
CLOSEl :CLOSE15:GOSUB10
FD 270
NEXT:OK A GOTO420, 610 , 6
90,700,280:GOSUB1060:GO
MID? ( IN? , I ) IGOSUB320 : IF
I<25 THEN GOSUB380{A(1
60: PRI NT "(RVS) ERROR: "A
?
TO250
/3)=A
GQ
870
RETURN
EJ 280
PRINT "(RVS) QUIT " :INPU
T"fDOWN)|4|ARE YOU SURE
CY/N]";AS:IF LEFT?(A5,
1)<>"Y"THEN220
PK
570
NEXT: IF AOCK THEN GOSU
B1060:PRINT"[BLK} (RVS)
[ SPACE }ERROR: REENTER L
INE E4i":F=l:GOTO440
EJ
880
POKE183,PEEK(FA+2) :POKE
187,PEEK{FA+3) :P0KE188,
PEEK(FA+4) :IFOP=0THEN92
0
EM 290
POKE SD+24,0:END
HJ
580
GOSUB1080:B=BS+AD-SA:FO
HJ
890
SYS 63466:IF(PEEK(783)A
JX 300
IN$=N5 : AD=0 : INPUTIN? : I F
LEN ( IN? ) 0 4THENRETURN
R 1=0 TO 7:POKE B+I,A(I
) :NEXT
NDDTHEN GOSUB1060:PRIN
T" [DOWN) (RVS) FILE NOT
KF 310
B?=IN?:GOSUB320:AD=AiB5
QQ
590
AD=AD+8:IF AD>EA THEN C
(SPACE) FOUND ":GOTO690
=MID? ( IN? , 3 ) : G0SUB3 20 : A
LOSE3:PRINT"[DOWN) ( BLU }
CS
900
AD=PEEK(829)+2 56*PEEK(8
D=AD*256+A;RETURK
** END OF ENTRY'** (BLK}
30):IF ADoSA THEN P=l:
PP 320
A=0:FOR J=l TO 2:A?'sMID
(2 DOWN)":GOTO700
GOTO970
$ ( B? , J , 1 ) :B=ASC (A? ) -C4+
GQ
600
F=0 :GOTO440
SC
910
A=PEEK(a31 )+256*PEEK(83
(AS> "@" )*C7 :A=A*C6+B
QA
610
PRINT" (CLR) (DOWN) [RVS)
2)-l:F=P-2*(A<EA)-3*(A>
JA 330
IF B<0 OR B>15 THEN AD=
(SPACE) DISPLAY DATA ":G
EA) :AD=A-AD:GOTO930
0:A=-l!j=2
OSUB400:IF IN?=N? THEN2
KM
920
A=SA:B=EA+1:GOSUB1010:P
GX 340
NEXT: RETURN
20
OKE730,3:SYS 63338
CH 350
B=INT(A/C6) :PRINr MID? (
H$,B+1,1); :B=A-B*C6:PRI
NT MID5(H?,B+1,1); : RETU
RJ
620
PRINT " [DOWN) [ BLU } PRESS :
(RVS) SPACE (OFF} TO PAU
SE, (RVS} RETURN (OFF) TO
JF
930
A=.BS : B=BS+ ( EA-SA) +1 :GOS
UB1010:ON OP GOTO950SSY
S 63591
RN
BREAKB43(D0WN)"
AE
940
GOSUB1080 :PRINT" {BLU} **
RR 360
A=INT(AD/Z6) .•GOSUB350:A
=AD-A*Z6:GOSUB350:PRINT
KS
630
GOSUB360iB=BS+AD-SA!POR
I=BTO B+7:A=PEEK(I) :GOS
SAVE COMPLETED **":GOT
0220
11.11,
UB350:GOSUB380sPRINT S?
XP
950
POKG147,0iSYS 63562:IF
BE 370
CK=INT(AD/Z6) :CK=AD-Z4*
;
( SPACE )ST>0 THEN970
CK+Z5*(CK>27) :GOTO390
CC
640
NEXT: PRINT "(RVS)"; !A=CK
FR
960
GOSUB1080 iPRINT" (BLU} **
PX 380
CK=CK*Z2+Z5*<CK>Z7)+A
:GOSl]B350:PRINT
LOAD COMPLETED **":GOT
JC 390
CK=CK+Z5*(CK>Z5) :RETURN
KH
650
F=1:AD=AD+8:1P AD>EA TK
0220
QS 400
PRINT" f DOWN) STARTING AT
E43"; :GOSUB300:IF IN?<>
ESPRINT" [down) [BLU)** E
ND OF DATA **":GOTO220
DP
970
GOSUB1060 SPRINT" (BLK)
(RVS) ERROR DURING LOAD:
N? THEN GOSUB1030£lF F
KC
660
GET A?: IF A?=R5 THEN GO
( DOWN) 143 ":0N F G0SUB98
[ SPACE ]THEK400
SOB1080:GOTO220
0,990, 1000 SGOTO220
EX 410
RETURN
EQ
670
IF A?=S$ THEN F=F+i:GOS
PP
980
PRI NT " I NCO RRECT START IN
HD 420
PRINT" [RVS) ENTER DATA
UB1080
G ADDRESS ( " ; SGOSUB360 :
t SPACE )"!GOSUB400: IF IN
AD
680
ONFGOTO630,660,630
PRINT") ": RETURN
5=N5 THEN220
CM
690
PRINT" {DOWN} [RVS) LOAD
GR
990
PRINT "LOAD ENDED AT ";;
JK 430
OPEN3,3:PRlNT
(SPACE) DATA ":OP=l:GOTO
AD=SA+ADjGOSUB360: PRINT
SK 440
POKE198,0:GOSUB360:IF F
710
D? : RETURN
THEN PRINT IN?: PRINT"
[OP] [5 RIGHT}";
PC
700
PRI NT "[DOWN) [RVS) SAVE
FD
1000 PRINT "TRUNCATED AT END 1
(SPACE) FILE ":OP=0
ING AnORFSS "; RETURN
GC 450
FOR 1=0 TO 24 STEP 3:8?
=S$:FOR J=l TO 2:IF F T
HEN B5=MID$(IN?,I+J,1)
RX
710
IN?=N$:INPUT"(DOWN)FILE
RX
1010 AH=INT(A/256) :AL=A-(AH 1
NAHEE4|";IN$:IF IN?=K?
[ SPACE }THEN220
*256) :POKE193,ALsPOKEl
94, AH
3 AH=INT(B/256)!AL=B-(AH
*256) :POKE174,AL:POKEl
75, AH: RETURN
HA 460
HD 470
PRINT" (RVS j "B?L? ;: IF I<
24THEN PRINT" [OFF)";
GET A?: IF A?=N$ THEN4 70
PR
720
F=0: PRINT "(DOWN) ( BLK )
[RVS)t(OFF}APE or (RVS)
D(OFP)ISK! E4J";
FF
102(
July 1987 COMPUTEI 12?
FX 1030 IF AD<SA OR AD>EA THEN
1050
HA 1040 IF(AD>511 AND AD<40960
)OR(AD>49151 AND AD<53
248) THEN GOSUB1080:F=0
: RETURN
HC 1050 GOSUB1060;PRINT"{RVS]
I SPACE} INVALID ADDRESS
[D0WNJ{BLKJ":F=1 :RETU
HN
AR 1060 POKE SD+5,31:POKE SD+6
,208:POKE SD,240:POKE
{SPACEjSD+l,4:P0KE SD+
4,33
DX 10 70 FOR S=l TO 100:NEXT:GO
TO1090
PF 1080 POKE SD+5,8:P0KE SD+6,
240:POKE SD,0:POKE SD+
1,90:POKE SD+4,17
AC 1090 FOR S=l TO 100: NEXT :P0
KE SD+4,0:POKE SD , 0 ; PO
KE SD+ 1,0: RETURN
Program 2: MLX For
Commodore 128
AE 100 TRAP 960:POKE 4627,128:
DIM NL?,A(7)
XP 110 Z2=2:Z4=254:Z5=255:Z6=2
56:Z7=127 :BS=256*PEEK(4
627) :EA=6 5280
FB 120 BE?=CHR$(7) :RT$=CHR5(13
):DL$=CHR?(20) :SPS=CHR?
(32):LF5=CHR$(157)
KE 130 DEF FNHB(A)-INT(A/256)i
DEF FNLB(A)=A-FNHB{A)*2
56: DEF FNAD(A)=PEEK(A)+
256*PEEK(A+1)
JB 140 KEY 1,"A"!KEY 3,"'B":KEY
5, "C":KEY 7,"D":V0L 15
:IF RGR(0)=5 THEN FAST
FJ 150 PRINT "{CLR)"CHR$( 142 ),-C
HR?<8):COLOR 0,15:COLOR
4,15:COLOR 6,15
GQ 160 PRINT TAB(12)"{RED}
{rvsH2 spaces 169 @1
1 2 SPACES1"RT5jTRBC12)"
{EVS][2 SPACES) {OFF}
{bLO] 128 MLX (RED}
{RVS3{2 spaces )"'RT$; tab
{12)"{RVS](13 spaces}
{BLU}"
FE 170 PRINT"[2 DOWN}
{3 SPACES ) COMPUTE! 'S MA
CHINE LANGUAGE EDITOR
{ 2 DOWN ) "
DK 180 PRINT "{BLK} STARTING ADD
RESSi4 3"; sGOSUB 260:IF
{SPACE}AD THEN SA=AD:EL
SE 180
PH 190 PRINT" [BLK] [2 SPACES} EN
DING ADDRESSg4^"; :GOSUB
260: IF AD THEN EA=AD:E
LSE 190
MF 200. PRINT" (DOWN} {BLK} CLEAR
{SPACE} WORKSPACE Cy/N]?
i43":GETKEY A?: IF A5 <> "
Y" THEN 2 20
QH 210 PRINT" (DOWN} { BLU }WORKIN
G...";!BANK 0 : FOR A=BS
(SPACE) TO BS+(EA-SA)+7i
POKE A,0:NEXT A:PRINT"D
ONE"
DC 220 PRINT TAB(10)"[DOWNJ
(BLK)(RVS} MLX COMMAND
(SPACE)MENU £43{D0WN3":
PRIST TAB(13)"SRVS)E
{0FP)NTER DATA " RT$; tab (
13)"{RVS}D{0FF}ISPLAY D
ATA"RT$ ; TAB ( 13 ) " [ RVS ] L
(off}oad file"
HB 230 PRINT TAB ( 13 ) " {RVS} S
[OFPJaVE FILE"RT5;TAB(1
3)"{RVS}C{0FF)ATAL0G DI
SK"RT?;TAB(13)"{RVS}Q
{OFF3UIT{DOWNi {BLK} "
AP 240 GETKEY A$ :A=INSTR( "EDLS
CQ",A$):ON A GOTO 340,5
S0,640,6 50,930,940:GOSU
B 950:GOTO 240
SX 250 PRINT "STARTING AT";:GOS
UB 260:IF(AD<>0)OR(A$=N
L$)THEN RETURN:ELSE 250
BG 260 A$=NL$: INPUT A?: IF LEN{
A$)=4 THEN AD=DEC(A$)
PP 270 IP AD=0 THEN BEGIN; IF A
$<>NL5 THEN 300SELSE RE
TURN : BEND
MA 280 IF AD<SA OR AD>EA THEN
[SPACE 3 300
PM 290 IF AD>511 AND AD<65280
{ SPACE }THEN print BE? r :
RETURN
SQ 300 GOSUB 950:PRINT"(RVS} I
NVALID ADDRESS (DOWN)
{ BLK j " : AD=0 : RETURN
RD 310 CK=FNHB{AD) ;CK=AD-Z4*CK
+Z5*(CK>Z7):G0T0 330
DD 320 CK=CK*Z2+Z5*(CK>Z7)+A
AH 330 CK=CK+Z5*{CK>Z5) : RETURN
QD 340 PRINT 8E$?"{RVS} ENTER
{SPACE}DATA "jGOSUB 250
:IP A5=NL5 THEN 220
JA 350 BANK 0 ! PRINT;P=0:OPEN 3
,3
BR 360 GOSUB 310:PRINT HEX?(AD
)+":";:IF F THEN PRINT
{SPACE}L?sPRINT" (up)
IS RIGHT}";
QA 3 70 FOR 1=0 TO 24 STEP 3 : B$
=SP5sP0R J=l TO 2: IF F
(SPACE}THEN B$=MID?(L?,
1+J,1)
PS 380 PRINT"(RVS}"BS+LF5; :IF
( SPACE )I<24 then PRINT"
{OFF}";
RC 390 GETKEY A?:IF (A$>!."/" AN
D A$<":") OR(A?>"@" AND
AS<"G") THEN 470
AC 400 IF AS="+" THEN A5="E":G
OTO 470
QB 410 IF AS="-" THEN A?="F":G
OTO 470
FB 420 IF A?=RTS AND ((1=0) AN
D (J=l) OR F) THEN PRIN
T B$; :J=2:NEXT:I=24:GOT
O 480
RD 430 IF A9="{H0ME}" THEN PRI
NT BS:J=2:NEXT:I=24:NEX
T:F=0:GOTO 360
XB 440 IF (A$=" {RIGHT}") AND F
THEN PRINT B5+LF$;:GOT
0 470
JP 450 IF A50LF5 AND A9<>DL?
{SPACE}0R {(1=0) AND (J
=1}) THEN GOSUB 950SGOT
O 390
PS 460 A5=LF?+SP5+LF5: PRINT B?
+LP5; :J=2-J:IF J THEN P
RINT LF5; : 1=1-3
GB 470 PRINT A$;:NEXT J:PRINT
[SPACe3SP$;
HA 480 NEXT I : PRINT: PRINT" {UP }
(5 right)"; :L?="
{27 SPACES}"
DP 490 FOR 1=1 TO 2 5 STEP 3tGE
T#3,A?,B$:IP A$=SP$ THE
N 1=25: NEXT: CLOSE 3: GOT
O 220
BA 500 A$=A?+BS:A=DEC(A5):MID$
(L?,I,2)=A?:IF K25 THE
N GOSUB 320:A(I/3)=A:GE
T*3,A5
AR 510 NEXT I: IF A<>CK THEN GO
SUB 950: PRINT: PRINT"
(RVS} ERROR: REENTER LI
NE ";?=■! ;GOTO 360
DX 520 PRINT BE5:B=BS+AD-SA:F0
R 1=0 TO 7: POKE B+I,A(I
) : NEXT I
XB 530 F=0:AD=AD+8:IF AD<=EA T
HEN 360
CA 540 CLOSE 3 : PRINT " (DOWN)
(BLU}** END OF ENTRY **
{BLK} {2 DOWNj":GOTO 650
MC 550 PRINT BE$; "(CLR) {DOWN}
(RVS} DISPLAY DATA ":G0
SUB 250: IF A5=NL$ THEN
(SPACE) 220
JF 560 BANK 0:PRIST" (DOWN)
(BLU) PRESS: { RVS} SPACE
(OFF) TO PAUSE, {RVS}RE
TURN (off) to BREAK§43
{DOWN}"
XA 570 PRINT HEX? (AD )+":"; ;GOS
UB 310jB=BS+AD-SA
DJ 580 FOR I=B TO B+7;A-PEEK(I
) rPRINT RIGHT? (HEX? (A),
2);SP5::GOSUB 320:NEXT
(SPACE) I
XB 590 PRINT" { RVS) ";RIGHT? (HEX
S(CK),2)
GR 600 F=l:AD=AD+a:IF AD>EA TH
EN PRINT" (BLU}** END OF
DATA **":GOTO 220
EB 610 GET AS: IF A?=RT$ THEN P
RINT BE$:GOTO 220
QK 620 IF A?=SP5 THEN F=F+1:PR
INT BE?;
XS 630 ON F GOTO 570,610,570
RP 640 PRINT BE? "{down} (RVS) L
OAD DATA ":OP=1:GOTO 66
0
BP 650 PRINT BE$"{D0WN} (RVS) S
AVE FILE ":OP=0
DM 660 Ft=0:P?=NL?:INPUT"FILENA
ME§4i";F5:IF F9=NL? THE
N 220
RF 670 PRINT" (down} (BLK) (RVS)T
{OFF} APE OR {RVS}D(0FF}
ISK: i4J";
SQ 680 GETKEY A?: IP A?="T" THE
N 850:£LSE IP A5<>"D" T
HEN 680
SP 690 PRINT"DISK{DOWN)":IF OP
THEN 760
EH 700 D0PEN#1, {F5+",P"),W:IF
{ SPACE }DS THEN A?=D?:GO
TO 740
JH 710 BANK 0:POKE BS-2,FNLB(S
A)iPOKE BS-1,FNHB(SA) :P
RINT "SAVING "; F? : PRINT
MC 720 FOR A=BS-2 TO BS+EA-SA:
PRINT#1,CHR?(PEEK(A)); :
IF ST THEN A?="DISK WRI
TE ERROR" :GOTO 750
GC 730 NEXT A:CLOSE 1: PRINT"
iBLU}** SAVE COMPLETED
{ SPACE JWITHOUT ERRORS *
*":GOTO 220
RA 740 IF DS=63 THEN BEGIN: CLO
SE 1 : INPUT "{ BLK ) REPLACE
EXISTING FILE CY/N]g4i
";A$:IF A$="Y" THEN SCR
ATCH(F?) : PRINT: GOTO 700
:ELSE PRINT" (BLK )":GOTO
660! BEND
GA 750 CLOSE 1: GOSUB 950: PRINT
"(BLK) (RVS} ERROR DURIN
G SAVE: E4i":PRINT A?:G
OTO 220
FD 760 DOPEN#l, (F?+",P"):IF DS
THEN A?=>DS?:F=4: CLOSE
{ SPACE }l:GOTO 790
128 COMPUTEI July 1987
DP
820
EB
830
FP
840
KS
850
XX
860
PX 770 GET#1,A5,B$:CL0SE 1 :AD=
ASC(AS)+256*ASC(B$}:IF
ESPACEJaDoSA THES F=1:
GOTO 790
KB 780 PRINT "LOADING ";F5:PRIN
T!BLOAD(F$),B0,P(BS) sAD
=SA+FNAD(174)-BS-1 !F=-2
*(AD<EA)-3*(AD>EA)
RQ 790 IF F THEN 800 : ELSE PRIN
T"tBLUj** LOAD COMPLETE
D WITHOUT ERRORS **":G0
TO 220
ER 800 G0SU8 950 ! PRINT" (BLK)
[rvsJ error during load
! mi":on f gosub 810,8
20,330,840:GOTO220
QJ 810 print"incorrect startis
G ADDRESS ( " ,- HEX$ ( AD) ; "
) " : RETURN
PRINT "LOAD ENDED AT ";H
EX$(AD) : RETURN
PRINT "TRUNCATED AT ENDI
NG ADDRESS ("HEXS(EA)")
" : RETURN
PRINT "DISK ERROR ";AS:R
ETURN
PRINT "TAPE" !AD=P0INTER(
F$):3ANK 1 :A=PEEK(AD) :A
L=PEEK(AD+1) :AH=PEEK(AD
+2)
BANK 15:SYS DEC("FF68")
,0,1: SYS DEC("FFBA"),1,
1,0! SYS DEC("FFBD"),A,A
L,AH;SYS DEC( "FF90" ) , 12
8: IF OP THEN 890
FG 870 PRINT !A=SA!B=EA+1: GOSUB
920:SYS DEC("E919"),3:
PRINT "SAVING " ; F?
AB 880 A=BS:B=-BS+(EA-SA)+1:G0S
UE 920:SYS DEC("EAia"):
PRINT" [down] EbLU}** TAP
E SAVE COMPLETED **":G0
TO 220
CP 890 SYS DEC("E99A") :PRINT:I
F PEEK(2816)=5 THEN GOS
UB 950jPRINT"fDOWN}
£BLK}(RVS) FILE NOT FOU
ND "jGOTO 220
GQ 900 PRINT"L0ADING ...{DOWN}
":AD=FNAD(2817) :IF AD<>
SA THEN F=l:GOT0 800 : EL
SE AD=FNAD(2819)-l:F=-2
*(AD<EA)-3*(AD>EA)
JD 910 A=BS:B=BS+(EA-SA)+1:G0S
UB 920: SYS DEC("E9FB")i
IF ST5-0 THEN 800 s ELSE 7
90
XB 920 P0KE193,FNLB(A) :P0KE194
,FNHB{A) :POKE 174,FNLB(
fl):POKE 175,PNHB(B) :RET
URN
CP 930 CATALOG: PRINT "J DOWN)
(BLU)** PRESS ANY KEY F
OR MENU **":GETKEY AS :G
OTO 220
MM 940 PRINT BE?"{RVS} QUIT
E4i'*rRT$; "ARE YOU SURE
fSPACE)!;Y/N]7"!GETKEY A
?:IF A$<>"Y" THEN 220 :E
LSE PRINT" {CLR}":BANK 1
5: END
JE 950 SOUND 1,500, 10: RETURN
AF 960 IF ER=14 AND EL=260 THE
N RESUME 300
HK 970 IF ER=14 AND EL=500 THE
N RESUME NEXT
KJ 980 IF ER=4 AND EL=780 THEN
F=4sA5=DS$:RESUME 800
DQ 990 IF ER=30 THEN RESUME: EL
SE PRINT ERR5(ER);" ERR
OR IN LINE"; EL ^
Ik^l ^/^ Machine Language
IwlkyVEntry Program For
■■■■■■■■■^^^^■/\PPl@ Tim Victor. Editona! Progrommer
To make it easier to enter machine lan-
guage programs into your computer with-
out typos, COMPUTE! is introducing its
"MLK" entry program for the Apple U
series. It's our best MIX yet. It runs on the
11, n+. He, and lie, and with either DOS
3.3 or ProDOS.
A machine language (ML) program is
usually listed as a long series of num-
bers. It's hard to keep your place and
even harder to avoid making mistakes as
you type in the listing, since an incorrect
line looks almost identical to a correct
one. To make etror-free entry easier,
COMPUTE! generally lists ML programs
for Commodore and Atari computers in
a format designed to be typed in with a
utility called "MLX." The MLX program
uses a checksum system to catch typing
errors almost as soon as they happen.
Apple MLX checks your typing on
a line-by-line basis. It won't let you
enter invalid characters or let you con-
tinue if there's a mistake in a line. It
won't even let you enter a line or digit
out of sequence. Best of all, you don't
have to know anything about machine
language to enter ML programs with
MLX. Apple MLX makes typing ML
programs almost foolproof.
Using Apple MLX
Type in and save some copies of Apple
MLX on disk (you'll want to use MLX to
enter future ML programs in COM-
PUTE!). It doesn't matter whether you
type it in on a disk formatted for DOS
3,3 or ProDOS. Programs entered with
Apple MLX, however, must be saved to
a disk formatted with the same operat-
ing system as Apple MLX itself.
If you have an Apple lie or lie, make
sure that the key marked CAPS LOCK is
in the dovm position. Type RUN. You'll
be asked for the starting and ending ad-
dresses of the ML program. These values
vary for each program, so they're given at
the beginning of the ML program listing
and in the program's accompanying arti-
cle. Find them and type them in.
Invalid Characters Banned
Apple MLX is fairly flexible about how
you type in the numbers. You can put
extra spaces between numbers or leave
the spaces out entirely, compressing a
line into 18 keypresses. Be careful not to
put a space between two digits in the
middle of a number. Apple MLX wiU
read two single-digit numbers instead of
one two-digit number {F 6 means F and
6, not F6).
You can't enter an invalid character
with Apple MLX. Only the numerals 0-9
and the letters A-F can be typed in. If you
press any other key (with some excep-
tions noted below), nothing happens.
This safeguards against entering extrane-
ous characters. Even tietter, Apple MLX
checks for transposed characters. If
you're supposed to type in AO and in-
stead enter OA, Apple MLX will catch
your .mistake.
The next thing youll see is a menu
asking you to select a function. The first is
{E)NTER DATA. If you're just starting to
type in a program, pick this. Press the E
key, and the program asks for the ad-
dress where you want to begin entering
data. Type the first number in the first
line of the program listing if you're just
starting, or the line number where you
left off if you've already typed in part of a
program. Hit the RETURN key and begin
entering the data.
Once you're in Enter mode, Apple
MLX prints the address for each program
line for you. You then type in aU nine
numbers on that line, beginning vn\h the
first two-digit number after the colon (:).
Each line represents eight bytes and a
checksum. When you enter a line and hit
RETURN, Apple MLX recalculates the
checksum from the eight bytes and the
address. If you enter more or less than
nine numbers, or the checksum doesn't
exactly match, Apple MLX erases the line
you just entered and prompts you again
for the same line.
Apple MLX also checks to make
sure you're typing in the right line. The
address (the number to the left of the
colon) is part of the checksum recalcula-
tion. If you accidentally skip a line and
try to enter incorrect values, Apple MLX
won't let you continue. Just make sure
you enter the correct starting address; if
you don't, you won't be able to enter any
of the following lines. Apple MLX will
stop you.
Editing Features
Apple MLX also includes some editing
features. The left- and right-arrow keys
allow you to back up and go forward on
the line that you are entering, so you can
retype data. Pressing the CONTROL
(CTRL) and D keys at the same time
{delete) removes the character under the
July 1987 COMPUTE! 129
cursor, shortening the line by one charac-
ter. Pressing CTRL-I (insert) puts a space
under the cursor and shifts the rest of the
line to the right, making the line one
character longer. If the cursor is at the
right end of the line, neither CTRL-D nor
CTRL-I has any effect.
When you've entered the entire list-
ing (up to the ending address that you
specified earlier), Apple MLX automati-
cally leaves Enter mode and redisplays
the functions menu. If you want to leave
Enter mode before then, press the RE-
TURN key when Apple MLX prompts
you with a new line address. (For in-
stance, you may want to leave Enter
mode to enter a program listing in more
than one sitting; see below.)
Display Data
The second menu choice, (D)ISPLAY
DATA, examines memory and shows the
contents in the same format as the pro-
gram listing. You can use it to check your
work or to see how far you've gotten.
When you press D, Apple MLX asks you
for a starting address. Type in the address
of the first line you want to see and hit
RETURN. Apple MLX displays program
lines until you press any key or until it
reaches the end of the program.
Save And Load
Two more menu selections let you save
programs on disk and load them back
into the computer. These are (5)AVE
FILE and (L)OAD RLE. When you press
S or L, Apple MLX asks you for the
filename. The first time you save an ML
program, the name you assign Vkill be the
program's filename on the disk. If you
press L and specify a filename that
doesn't exist on the disk, you'll see a disk
error message.
If you're not sure why a disk error
has occurred, check the drive. Make sure
there's a formatted disk in the drive and
that it was formatted by the same operat-
ing system you're using for Apple MLX
(ProDOS or DOS 3.3). If you're trying to
save a file and see an error message, the
disk might be full. Either save the file on
another disk or quit Apple MLX (by
pressing the Q key), delete an old file or
two, then run Apple MLX again. Your
typing should still be safe in memory.
Apple MLX: Machine
Language Entry Program
For Instrucllons on entering this program,
please refer to "COMPUTEl's Guide to Tvplng
In Programs" elsewhere In this issue.
et 100 N = 9: HOME -. NORMAL : PR
INT "APPLE MLX"! POKE 34,
2: DNERR GOTO 610
Ce 110 VTAB 1: HTAB 20: PRINT "S
TART ADDRESS";: GOSUB 330
! IF A = 0 THEN PRINT t:HR
« (7): GOTO 110
eC 120 S = A
n 130
20 140
as 150
K 160
93
170
(IF
180
Al
190
3S
200
n
210
C2
220
n
230
ei
240
F2 250
n 260
CC 270
4e 260
*4 290
F? 300
27 310
72 320
BE 330
22 340
El 350
:S 360
VTAB 2: HTAB 20: PRINT "E
ND ADDRESS " ; : BOSUB 530
: rFS>=AORA=0 THE
N PRINT CHR* (7) t BOTO 13
0
E = A
PRIrMT : PRINT "CHOOSE: (E)
NTER DATA";: HTAB 22: PR I
NT "(D) I SPLAY DATA": HTAB
B: PRINT "(L)OAD FILE (
S)AVE FILE (Q)UIT": PRIN
T
GET A*: FOR I = 1 TO 5: I
F A» < > MID* <"eDLSB",I,
1) THEN NEXT : SOTO 160
ON I GOTO 270,220,180,200
! POKE 34,0: END
INPUT "FILENAME: " ; A*! IF
A« < > "" THEN PRINT CHR
S (4); "BLOAD";A»;",A";S
GOTO 150
INPUT "FILENAME: ";A*: IF
A» < > "" THEN PRINT CHR
» (4); "BSAVE";A»; ",A";S;■'
,L"; (E - S) + 1
BOTO 150
GOSUB 590: IF B = 0 THEN
1S0
FOR B = B TO E STEP B:L =
4:A = B: BOSUB 580! PRIN
T fl»;"s ";:L = 2
FOR F = 0 TO 7:V<F + 1) =
PEEK (B + F) : NEXT : GOS
UB 560: V (9) = C
FOR F = 1 TO N:A = V(F) :
OOSUB 580! PRINT A»" ";:
NEXT i PRINT ! IF PEEK (4
9152) < 12B THEN NEXT
POKE 4916B,0: GOTO 150
BOSUB 590: IF B = 0 THEN
150
FOR B = a TO E STEP 8
HTAB I: A = B:L = 4! BOSUB
;: CAL
0: GO
5B0! PRINT fl»j"i
L 6466B:A« - "":
SUB 330: IF L ■=
0
BOSUB 470: IF F
0 THEN 13
> N THE
: GOTO 2
N PRINT CHR« (7) ;
90
IF N = 9 THEN BOSUB 560!
IF C < > V(9) THEN PRINT
CHR» (7) J! GOTO 290
FOR F = 1 TO 8: POKE B +
F - 1,V(F>: NEXT : PRINT
! NEXT : BOTO 150
IF LEN (ft*) = 33 THEN A*
= 0»:P - 0: PRINT CHR* (7
5?
L = LEN (fl*)!0* = A»:0 =
P:L» = "": IF P > 0 THEN
L« - LEFT* <A»,P)
": IF P < L - 1
R* =
N R»
i)
HTAB
! IF
= RIGHT* (A»,L
THE
P -
7: PRINT L*5 : FLASH
P < L THEN PRINT MID
♦ (A»,P + 1,1);: NORMAL :
PRINT R»;
7B 370 PRINT " ";: NORMAL
Ei 380 K = PEEK (49152): IF K <
128 THEN 3B0
CI 390 POKE 49168, 0!K - K - 128
5t 400 IF K = 13 THEN HTAB 7s PR
INT A*;" ";: RETURN
U 410 IF K = 32 OR K > 47 AND K
< SB OR K > 64 AND K < 7
1 THEN A* = L» + CHR* (K)
+ R»sP = P + 1
+ R
(P
CI 420
IF K = 4 THEN A* = L«
*
5F 430
IF K - 9 THEN A* - L*
" + MID* (A*,P +1,1)
R*
lA 440
IF K = 8 THEN P = P -
n 450 IF K = 21 THEN P = P + (P
< L)
n 460 GOTO 330
J7 470 F = liD = 0: FOR P = 1 TO
LEN (A«):C* = MID* (A»,P
,1) : IF F > N AND C« < >
" " THEN RETURN
SB 400 IF C« < > " " THEN BOSUB
520:V(F) = J + 16 * (D =
1) « VtF):D =0+1
5F 490 IF D > 0 AND C« = " " OR
D = 2 THEN D = 0:F = F +
1
18 500 NEXT : IF D = 0 THEN F =
F - 1
17 510 RETURN
B5 520 J = ASC (C«):a = J - 48 -
7 * (J > 64) ! RETURN
M 530 A = 0: INPUT At: AS = LEFT
« (A«,4): IF LEN (A*) = 0
THEN RETURN
6F 540 FOR P = 1 TO LEN (A*):C»
= MID* (A«,P, 1): IF C« <
"0" OR C» > "9" AND C* <
"A" OR C« > "Z" THEN A »
0: RETURN
2D 550 GOSUB 520! ft "A * 16 + J:
NEXT : RETURN
28 560 C = INT (B / 256) :C = B -
254 « C - 255 t (C > 127
J!C = C - 255 « (C > 253)
2J 570 FOR F=1T0B:C = C»2
- 255 » <C > 127) + V(F)!
C = C - 255 » (C > 255) :
NEXT : RETURN
UA 380 I = FRE (0):A* = "•': FOR
I «■ 1 TO L:T - INT (A / 1
6): A* - MID* ("01234567B9
ABCDEF",A - 16 « T + 1,1)
+ A»:ft = T: NEXT s RETUR
N
IF 390 PRINT "FROM ADDRESS ";: G
0SU8 330: IF S > A OR E <
ft OR A - 0 THEN B - 0! R
ETURN
«D 600 B = S + 8 » INT ((A - S)
/ 8) : RETURN
B4 610 PRINT "DISK ERROR"! BOTO
150 ,»
A!l the programs in
this issue are
availabie on the
ready-to-load
COMPUTE! Disk. To
order a one-year
(four-disk)
subscription,
call toll free
800-247-5470
(in lA 800-532-1272),
Please specify which
computer you are
using.
130 COMPOTE! July 1987
Classified
SOFTWARE
COMMODORE: TRY BEFORE YOU BUY. Best
selling games, utilities, educational, + classics
and new releases. lOO's of titles. Visa/MC. Free
brochure. RENT-A-DISC, Frederick Bldg. #345,
Hunfn, WV 25701 (304) 529-3232
FREE APPLE SOFTWARE
Over 1000 Public Domain Programs on 50
diskettes. $5 each plus $1 for shipping per order.
Send $1 for catalog, refundable with order.
C&H ENTERPRISES
PC Box 29243, Memphis, TN 38127
TI-99/4A QUALITY SOFTWARE for Business,
Home and Entertainment " Bonus Software
Offer! •• Send for FREE catalog to MICRO-BIZ
HAWAII, BOX 1108, PEARL CITY, HI 96782
T1-99/4A Software/Hardware bargains.
Hard-to-find items, Huge selection.
Fast service. Free catalog.
D.E.C, Box 690, Hicksville, NY 11801
DISCOUNT SOFTWARE for most computers.
FREE CATALOG. Sale; 5.25" DSDD Disks
25 for $13.95 ppd. WMJ DATA SYSTEMS-C,
4 Butterfly Dr.. Hauppauge, NY 11788
Cheap Soltware/IBM.PCjr, Compatibles,
5.25 or 3.5 disk. For catalog of diskettes
available for education, games, business, etc,
write: Morning Star Industry, P.O. Box 3095,
Ann Arbor, Ml 48105
FREE! PUBLIC DOMAIN SOFTWARE!
MS-DOS, IBM & Compatibles - Save $$$
@ $3.50 per disk! Free flyer: AP-JP, Inc,
PO Box 1155, W. Babylon, NY 11704
FREE SOFTWARE for C64, C128, IBM & CPM
send SASE for info (specify computer) to:
PUBLIC DOMAIN USERS GROUP
PO Box 1442-Al, Orange Park, FL 32067
MILLION S LOTTO BUSTER PROGRAM
GUARANTEED. SCIENTIFIC. HITS MILLIONS.
AUTHOR HITS WEEKLY. NOT A R/N GEN.
Z-WAY, PO BOX 9017, CANTON, OH 44711
^
f^^
:^
S5 WIN SS
with Our
SPORTS "^X^^r
Hondicapping <?***'^t\.
Software
THOROUGH BffED/ HARNESS ^-an(3lC0Dplng $2* «5. ennanced
;^??i GREYHOUND Horia.coDp!ng S2955, ennonceO M5^5
PRO FOOTBALL Honajcapomg Svitem.$39'?5 SpecilV a^iMJ
tope. Apoie ii-rcs. AtQfi, IBM PC, COM 4w3/12e. Tt rrtS-SO W:x3
3/4. Mod 100/200. Color AM S2 post/hanai MC/VlSA/CODs
accepted Free informoflon SOFTWARE EXCHANGE, Bo* 538?
C^.VJ B^Qomfieid Ml .13033 OtdOfi '-300-677-9iib7
T.I.99/4A OWNERS
1-800-USA-994A
Tech Help Catalogs
Newsletters
IN FLORIDA 305-962-8846
IBM PUBLIC DOMAIN SOFTWARE $3 PER DISK.
Send for free list. We have dbases/games/
spreadsheets/finance/educational/and more.
For home or business. Disks are new DSDD,
JDX/C PO Box 1561, Corona, CA 91718
HEY AMIGOI PD software for AMIGA!
Games, Graphics, Utilities & More! Over 70
Disks available, only $5.95 ea! SASE for Cat.
AMYWARE, FOB 19474, Jacksonville, FL 32245
APPLE PUBLIC DOMAIN SOFTWARE (almost
free) Send $2 for sample disk and catalog.
Refundable with order. Disks cost $2.50 and less.
CALOKE IND., Box 18477, KC, MO 64133
HARDWARE
IBM-APPLE
Compallbility Card
Now run Apple programs on all MS-DOS
systems including IBM. clones and
Tandy systems
Free Brochure
1-800-872-9942 In Fla: 305-962-8846
COMPUTEI Classified is a low-cost way to tell over 350,000
microcomputer owners about your product or service.
Rates: $25 per line, minimum of four lines. Any or all of the first line set in capi-
tal letters at no charge. Add $15 per line for boldface words, or $50 for the entire
ad set in boldface (any number of lines.) Inquire about display rates.
Terms: Prepayment is required. Check, money order, American Express, Visa, or
MasterCard is accepted. Make checks payable to COMPUTE! Publications.
Form: Ads are subject to publisher's approval and must be either typed or legibly
printed. One line equals 40 letters and spaces between words. Please underline
words to be set in boldface,
Qeneral Information: Advertisers using post office box numbers in their ads must
supply permanent address and telephone numbers. Ad will appear in next avail-
able issue after receipt.
Closing: 10th of the third month preceding cover date (e.g., June issue closes
March 10th). Send order and remittance to: Harry Blair, Classified Manager,
COMPUTE!, P.O. Box 5406, Greensboro, NC 27403. To place an ad by phone,
call Harry Blair at (919) 275-9809.
Notice: COMPUTE! Publications cannot be responsible for offers or claims of
advertisers, but will attempt to screen out misleading or questionable copy.
MISCELLANEOUS
SAFEWARE INSURES COMPUTERS against
fire, theft, & power surges for as little as
S39. Call Safeware, The Insurance Agency Inc.
at SOO/848-3469, Columbus, Ohio.
EARN MONEY WITH YOUR HOME
COMPUTER! Work your own hours at home.
Send for details. Northeastern, 234-1 N. 16th St.,
Bloomfield, NJ 07003
BUY-SELL-SWAP New/Used PC Hardware and
Software. Send Stamped Self-Addressed Envlp
For Sample National Listing to: Off-Site,
303 CedarviUe Rd., Poftstown, PA 19464
Back issues of COMPUTE!,
COMPUTEI's Gazette, or
any magazine disl<s can
be ordered by calling
800-346-6767
(in NY 212-887-8525),
Some issues may no
longer be avaiiabie.
USE YOUR COMPUTER TO PLAY
LOTTOI
Increase your chances at winning big!
LOTTO-LUCK is a computer pro-
gram, designed by a computer sci-
entist using the latest techniques of
Geometrical, Kabalism and Random
Relationships of numbers to give you
an opportunity to predict possible
winning PICK/6 lotto numbers.
LOTTO-LUCK will work on any lot-
tery, In any state or country. No need
for expensive updates. LOTTO-
LUCK will work this year, next year
and virtually forever. Runs on IBM
PC, Commodore 64 and Apple II
w/dlsk. Send $29,95 plus $3 S/H to;
WIN$WARE SYSTEMS
P.O. Box 8130, 2710 X St., Suite 1
Sacramento, CA 9581 8
(916)457-5535
Advertisers Index
Reader Service Number/Adverttssr Page
102 Abacus 31
103 Abby's Discount Software 113
104 Acorn of Indiana 116
105 Air Force 1
106 Aprotel< 99
107 Banana Software 116
108 CompuServe IBC
109 Comp-u-store Online 9
110 ComputAbility 1 10-1 1 1
1 1 1 Computer Direct 38-39
112 Computer Mail Order 18-19
113 Covox, Inc 97
1 14 Dresselhaus 66
115 Electronic One 117
GE Information Services 5
Halix Institute 108
1 16 Heuristic Reseorcti, Inc 108
117 Lyco Computer 48-51
Mindscape, Inc IFC
NRI Schools 59
Reader Service Number/ Advertiser
Page
118 PC-SIG 104
119 Precision Data Products 1 32
120 Precision Images, Inc. 116
121 Prof Jones 97
1 22 Silicon Express 45
123 Software Discounters of America 115
124 Spinnaker Software Corp 2
125 ST Station 119
126 Video Technology Computers, Inc BC
127 WINSWARE Systems 1 31
Classified Ads . .
131
. 25
. 41
. 23
. 33
-13
COMPUTE! Books' Amiga Collection
COMPUTE! Books' Flight Simulator Books
COMPUTE! Books for Commodore 64 and 1 28
COMPUTE! Books' Quick & Easy Books
Selections
COMPUTEI's PC Magazine and Contest
Announcement 12
Precision Dai* Products'"
POLY PACK 5V4'
DISKEHES
Blank Jackets
• WP Tabs
• Envelopes
• Made in USA
700% Error Free
Lifetime \NarrarHf
(From Leading Mir}
Sow in LOIS ol 100 Onlv
..V*
SONY POLY PACK
■; 3.5" DISKETTES
SS135TPI $1.10 Each
DS135TPt $1.23 Each
Sold In ton ol 50 only.
PERSONAL COMPUTER
TOOL KIT
A.^^ vinyl zipper case
Includes 10 tools and spare
parts container-
Dlicountt on Larger Quantltl«t
Min Order S25-00- S&H: Continental USA J4.00/100of
fewer disks. Reduced stripping charge on larger quan-
tities. Foreign orders. APO/FPO. please call.
Ml residents add -i* tax Prices SLibject to — T"
change without notice Hours 8 30 AM - ^^
7:00 PMET, ^E
Precision Dala Products'"
PO Box B357, GranO Rapids, Ml WSie
Customer Service & Information
(615)45;-3157
Toll-Free Order Lines
Ml 1.BOO-M2-2a68'OuIsideMI 1-8OO-25S-0028
J
Save Your Copies of COMPUTE!
Protect your back issues of COMPUTE!
in durable binders or library coses,
Each binder or case is custom-mode
in flag-blue binding with embossed
wtiite lettering. Each holds a year of
COMPUTE! Order several and keep
your issues of COMPUTE! neatly or-
ganized for quick reference.
(These binders moke great
gifts, too!)
Cases:
$7 95 each,
3 for S21 95.
6 for S39 95
Binders
$9 95 each.
3 for $27 95.
6 for $52 95
(Pleose odd S2,50 per unit for orders
outside ttie US,)
Send in your prepaid order with the
attached coupon
Mail to: Jesse Jones Industries. P.O. Box 5120,
Dept. Code COTE, Philadelphia, PA 19141
Please send me COMPUTEI D cases
Enclosed is my check or money order for S
only.)
Name
Address
City
State
Satisfaction guoranteed or money refunded
Please oftow 4-6 weeks for delivery
D binders.
_ . (U.S. funds
Zip.
PUCE BUSIES
RiJElIL jSAVINGS OIHR
As a current COMPUTE! subscriber yoiPre now entitled to big
renewal savings of up to 50%. Don't miss these price buster savings
Return this card today, or call us at 1-800-247-5470.
"■^--oficoa Pt,
"Onamnvna Cr
SAY YES NOW TO SAVINGS
YOU
SAVE
How
Long?
Newsstand
Pries
Your Renewal
Savings Rate
2 Years
$72.00
$36.00
50%
1 Year
36.00
19.95
44% \\
Ctwckoiw: DIYear D 2 Years
Name
Address
Apt.
City
D My payment is enclosed (use
State Zip
envelope) □ Please bill me
RATES GOOD IN U.S. ONLY AND ARE SUBJECT TO CHANGE.
FDR DELIVERY OUTSIDE THE U.S. ADD $6 (U .S, CURRENCY).
BUSINESS REPLY MAIL
FIRST CLASS PERMIT NO. 7478 DES MOINES. lA
POSTAGE WILL BE PAID BY ADDRESSEE
COMPUTE!
P.O. Box 10955
Des Moines, lA 50347-0955
NO POSTAGE
NECESSARY
IF MAILED
IN THE
UNITED STATES
1,1.1.11 Il..j..ll...lll...l<l...l.l..l.l.nl.ll
COMPUTEi's
FREE Reader Information Service
Use these cards to request FREE information about the products ad-
vertised in this issue, Clearly print or type your full name and address.
Only one card should be used per person. Circle the numbers that
correspond to the key number appearing in the advertisers index.
Send in the card and the advertisers will receive your inquiry. Al-
though ever/ effort is made to insure that only advertisers wishing to
provide product information have reader service numbers, compute!
cannot be responsible if advertisers do not provide literature to
readers.
Please use these cards on// for subscribing or for requesting product
information. Editorial and customer service inquiries should be ad-
dressed to: COMPUTE!, P.O. Box 5406, Greensboro, NC 27403. Check
the expiration date on the card to insure proper handling.
Use these cards and this address only for COMPUTE!'* Reader infor-
mation Service. Do not send with payment in any form.
COMPUTEl
101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117
lie 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134
13S 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151
152 153 154 165 166 157 158 159 160 161 162 163 164 165 166 167 168
169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185
186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202
203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219
220 221 222 223 224 225 226 227 226 229 230 231 232 233 234 235 236
237 238 239 240 241 242 243 244 246 246 247 248 249 250 251 252 253
Circle 101 ior Q one year new U.S. substrtiption to COMPUTE!: you will be billed for S24.
Please let us know. Do you
own
plan to buy:
i D
Apple
D
1 270
2;i
1 a
Atnri
n
; 272
273
274
Commodore
D
276
O
IRM
D
; 276
277
1 °
JUQQ/AA
D
1 278
279
i °
Ottifir
D
! leo
(specify model)
2ei
Please print or type name and address.
Limit one card per person.
Name
Address
City
Stote/Provlnce
Zip
Country
Phone
Please Include ZIP Code
Expiration Date 9/30/87
C0787
SUBSCRIBE
TO
COMPUTE!
D $24.00 One Year US Subscription
D $45.00 Two Year US Subscription
For Fastest Service,
Call Our Toll-Free
US Order Line
IIO0-247-S470
Name
Address
City State Zip
D Payment Enclosed □ Bill me
Charge my: D VISA D MasterCard D American Express
Account No. Expires /
vtJur suDscflptlon will begin witti the neKt owaiiabie luue. Please allow d-fi weeks (or delivery ot first iisge. Subscription prices subtect to
change at any time. Outside tt\e USA. Dloase add S6 (or each subscription. mAO
Place
Stamp
Here
COMPUTE! Reader Service
P.O. Box 2141
Radnor, PA 1 9089
BUSINESS REPLY MAIL
FIRST CLASS
PERMIT NO. 7478
DES MOINES. lA
NO POSTAGE
NECESSARY
IF MAILED
IN THE
UNITED STATES
POSTAGE WILL BE PAID BY ADDRESSEE
COMPUTEI
P.O. Box 10955
Des Moines, lA 50347-0955
1,1,1,11 ll,.l,.ll..,lll.r,l,l,„l.l.,M.,.l.ll
Now your kids can afford to do their homeworic
More and more students are learning with computers. However most parents haven't been able to
work a computer into their budget. The Laser 128 Apple-compatible computer will let you do all those
things that you and your family want to or have to do - homework, write
reports, even play games for a fraction of the cost of an Apple. With
a Laser you can work out your budget on a computer, instead of
breaking it with one. The Laser lets you take advantage of the
largest software library available, so your child can learn more at
home with the same programs they learn on in school. And, you
can do your work at home on the Laser, too,
Tfie Laser 128 with all its features: built-in disk drive;
128K RAM (expandable to 1 megabyte); serial, parallel,
modem and mouse interfaces; 80 column text mode; numeric
keypad; and an expansion slot; makes for a pretty educated
buy. When you do your homework on which computer to buy,
you'll find the Laser 128 at the head of the class with value. For
more information on the Laser 128 and the name of your
nearest dealer, contact Video Technology Computers, Inc.,
400 Anthony Trail, Northbrook, IL 60062, or call (312) 272-6760.
f^WLASER 128
Manufactured by
VIDEO TECHNOLOGY COMPUTERS, INC.
Appfe. Apple I fe and Apple He are
registered trademarks o1 Apple Computer. Inc.
MAKIHG COMPUTERS AFFORDABLE
<.:«
%
1
■
1
'
i
■
1
f iiL»
. . .-A
mmat
USE The Brains Your IBM
Wasn't BORN With.
Right at your fingertips in
CompuServe's IBM Forums.
Our IBM Forums involve thousands
of users worldwide who will show
you just how easy it is to get the most
from your IBM and IBM compatibles.
The IBM New Users Forum lets
you ask basic questions of PC
experts. The IBM Junior Forum
is perfect for PCjr"- users. Trade tips
with other IBM PC and AT users in
the IBM Software Forum. Ask
questions and get answers directly
from the manufacturers in the PC
Vendor Support Forum. And if you're
looking for a PC Bulletin Board, visit
the IBM Communications Forum.
Or try the IBM Hardware Forum for
discussions on hardware topics
and product updates.
Easy access to free software,
including free uploads.
You can easily download first-rate,
non-commercial software and utility
programs. Upload your own pro-
grams free of connect time charges.
And take advantage of CompuServe's
inexpensive weeknight and weekend
rates, when forums are most active
and standard online charges are
just IOC a minute. You can go online
in most areas with a local phone call.
Plus, you'll receive a $25.00
Introductory Usage Credit when
you purchase your CompuServe
Subscription Kit.
Information you just can't find
einywhere else.
Use the Forum Message Board
to send and receive electronic mes-
sages. Join ongoing, real-time
discussions in a Forum Conference.
Communicate with industry experts,
including the programmers who
write your favorite programs. Search
Forum Data Libraries for non-
commercial software and shareware.
Enjoy other useful services too,
like electronic editions of popular
computer magazines.
All you need is your IBM computer
or IBM compatible computer (or
almost any other personal computer)
and a modem.
To buy your Subscription Kit,
see your nearest computer dealer.
Suggested retail price is $39.95.
To receive our free brochure, or to
order direct, call 800-848-8199 (in
Ohio and Canada, call 614-457-0802).
If you're alreadv a CompuServe
subscriber, type GO IBMNET (the
IBM Users Network) at any ! prompt
to see what you've been missing.
CompuServe^
Inlormalion Services, P.O. Box 20Z12
5000 Arlinglon Cenlre Blvd.. Columbus, Ohio 43220
800-848-8199
ln0^lo, call ew-'ssy-osoa
An h&R Block Company